Chapter 3 แบบจำลองข้อมูล : Data Models

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
BC421 File and Database Lab
Advertisements

ภาควิชาวิทยาการคอมพิวเตอร์ มหาวิทยาลัยสงขลานครินทร์
จัดการฐานข้อมูลด้วย Microsoft Access 2007
E-R Model บรรยายโดย สุรางคนา ธรรมลิขิต.
Distributed Administration
บทที่ 2 ระบบฐานข้อมูล Database System BC424 Information Technology.
การออกแบบการวิจัยการเขียนเค้าโครงการวิจัย
การวิเคราะห์ระบบและวิธีปฏิบัติงาน
ฐานข้อมูลและ ระบบจัดการฐานข้อมูล
อ.กิตติพงศ์ เซ่งลอยเลื่อน อาจารย์พิเศษ มหาวิทยาลัยแม่โจ้
บทที่ 2 รูปแบบของฐานข้อมูล.
สถาปัตยกรรมฐานข้อมูล
Computer Code เลขฐานสอง bit (binary digit ) 1 byte = A.
Security and Integrity
Object-Oriented Analysis and Design
ฐานข้อมูลเชิงสัมพันธ์
บทที่ 8 การออกแบบข้อมูล (Data Design) โครงสร้างข้อมูล (Data Structure)
การขุดค้นข้อมูล (Data Mining)
ระบบฐานข้อมูล ข้อมูลมีความสำคัญมากต่อองค์การ ดังนั้นจะต้องมีการจัดเก็บที่เป็นระบบ สามารถค้นหาได้ง่าย เพื่อที่นำมาใช้ให้ทันเวลา ในการตัดสินใจของผู้บริหาร.
ฐานข้อมูลและการออกแบบฐานข้อมูล
MySQL.
บรรยายโดย สุรางคนา ธรรมลิขิต
Databases Design Methodology
– Web Programming and Web Database
การออกแบบแบบจำลองข้อมูล
Chapter 2 Database systems Architecture
โครงร่างการวิจัย (Research Proposal)
บทที่ 3 การวิเคราะห์โครงสร้าง Structure Analysis
สถาปัตยกรรมของระบบฐานข้อมูล
การออกแบบฐานข้อมูลเชิงสัมพันธ์
ความรู้พื้นฐานในการออกแบบ ฐานข้อมูลแบบสัมพันธ์ ธวัชชัย เอี่ยมไพโรจน์
ฐานข้อมูลเชิงสัมพันธ์
ความรู้เบื้องต้นเกี่ยวกับระบบฐานข้อมูล
การแปลง E-R เป็น Table.
การออกแบบฐานข้อมูลและการบริหารธุรกิจ
หลักการวิเคราะห์และออกแบบระบบฐานข้อมูล
หลักการวิเคราะห์และออกแบบระบบฐานข้อมูล
Charter 8 1 Chapter 8 การจัดการฐานข้อมูล Database Management.
The Relational Data Model
บทที่ 3 การวิเคราะห์ Analysis.
ที่ใช้ใน Object-Oriented Design
Data Modeling Chapter 6.
System Analysis and Design
บทนำเกี่ยวกับระบบฐานข้อมูล
ฐานข้อมูลเชิงสัมพันธ์ (Relational Database)
เรื่องการออกแบบฐานข้อมูล
1. รายการเปลี่ยนแปลง (Transaction)
1. ศัพท์พื้นฐานของฐานข้อมูล
การนำระบบเทคโนโลยีสารสนเทศมาสนับสนุนการทำงาน
โปรแกรมฐานข้อมูลที่นิยมใช้
ง การงานอาชีพและเทคโนโลยี 1 ครูสหรัฐ บัวทอง
Midterm outline Object-oriented programming Wattanapong suttapak, Software Engineering, school of Information communication Technology, university of phayao.
Object Oriented Programming : OOP
การออกแบบฐานข้อมูลในระดับตรรกะ
โมเดลเชิงสัมพันธ์ The relational model.
งานกลุ่ม กลุ่มที่ 3 เรื่อง ฐานข้อมูลเชิงสัมพันธ์
MS Access (basic) By Kanok Khamhun. ฐานข้อมูล (Database) Database ( ฐานข้อมูล ) คือที่ เก็บรวบรวมข้อมูลที่มี ความสัมพันธ์ไว้ด้วยกัน ขึ้นอยู่ กับวัตถุประสงค์ของการเก็บ.
บทที่ 12 ฐานข้อมูล.
Chapter 1 : Introduction to Database System
เทคโนโลยีสารสนเทศ.
แบบจำลองข้อมูล (Data Model)
Introduction to Database
Chapter 3 : แบบจำลองฐานข้อมูล (Data Model)
บทที่ 4 แบบจำลองฐานข้อมูลเชิงสัมพันธ์ Relational Database
สถาปัตยกรรมของระบบฐานข้อมูล
บทที่ 3 แบบจำลองของฐานข้อมูล (Database Model)
โครงสร้างข้อมูล( Data Structure)
ฐานข้อมูลเชิงสัมพันธ์ Relational Database
제 10장 데이터베이스.
ใบสำเนางานนำเสนอ:

Chapter 3 แบบจำลองข้อมูล : Data Models

แบบจำลองข้อมูล (Data Models) - เป็นแหล่งรวมของแนวคิดที่นำเสนอความเป็นจริงของวัตถุ ข้อมูล และ เหตุการณ์ รวมถึงความสัมพันธ์ระหว่างข้อมูลที่มีความสอดคล้องกัน - การนำแนวคิดต่างๆ มานำเสนอให้เกิดเป็นรูปแบบจำลอง - ใช้ในการสื่อสารระหว่าง Database Designer กับ User เพื่อให้เกิด ความเข้าใจตรงกัน

ประเภทของแบบจำลองข้อมูล (Types of Data Models) Conceptual Data Models Implementation Data Models

Conceptual Data Models Implementation Data Models ประเภทของแบบจำลองข้อมูล : เชิงแนวคิด (Types of Data Models : Conceptual) Conceptual Data Models ใช้อธิบายภาพโดยรวมของข้อมูลทั้งหมดในระบบ แสดงในรูปไดอะแกรมความสัมพันธ์ระหว่าง Entities ทำให้เกิดความเข้าใจกันระหว่างผู้ออกแบบและผู้ใช้ ไม่ขึ้นอยู่กับ DBMS ตัวอย่างเช่น Entity-Relationship Model : E-R Model Implementation Data Models

Conceptual Data Models Implementation Data Models ประเภทของแบบจำลองข้อมูล : เชิงแนวคิด (Types of Data Models : Conceptual) Conceptual Data Models Implementation Data Models ใช้อธิบายโครงสร้างข้อมูลของฐานข้อมูล อ้างอิงกับ DBMS

พื้นฐานการสร้างแบบจำลองข้อมูล (Data Models Basic Building Blocks) Entities Attributes Relationships Constraints

พื้นฐานการสร้างแบบจำลองข้อมูล (Data Models Basic Building Blocks) Entities บุคคล สิ่งของ หรือเหตุการณ์ ที่เกี่ยวข้องกับข้อมูลที่รวบรวม ไว้เพื่อการจัดเก็บ ถือเป็นตัวแทนของวัตถุในโลกแห่งความเป็นจริง *** ต่อไปมันจะกลายไปเป็นตาราง *** Attributes Relationships Constraints

พื้นฐานการสร้างแบบจำลองข้อมูล (Data Models Basic Building Blocks) Entities Attributes คุณลักษณะ (properties) ของ Entities *** ต่อไปมันจะกลายไปเป็นฟิลด์ของตาราง *** Relationships Constraints

พื้นฐานการสร้างแบบจำลองข้อมูล (Data Models Basic Building Blocks) Entities ความสัมพันธ์ระหว่าง Entities 1 : 1 1 : M M : M หรือ M : N Attributes Relationships Constraints

พื้นฐานการสร้างแบบจำลองข้อมูล (Data Models Basic Building Blocks) Entities Attributes กฎเกณฑ์/ข้อตกลง ของข้อมูล เกิดความมั่นใจในความเป็นอันหนึ่งอันเดียวกัน เกิดความสอดคล้องตรงกันของข้อมูล Relationships Constraints

แบบจำลองฐานข้อมูล (Database Model) - รูปแบบหรือวิธีการจัดการเข้าถึงข้อมูลในฐานข้อมูล จำเป็นต้องมีวิธีการหรือโครงสร้างการจัดการที่แตกต่างกัน ขึ้นอยู่กับ DBMS ที่ใช้

แบบจำลองฐานข้อมูล (Database Model) Hierarchical Database Model Network Database Model Relational Database Model Object-Oriented Database Model Multidimensional Database Model

แบบจำลองฐานข้อมูล : แบบลำดับชั้น (Hierarchical Database Model)

แบบจำลองฐานข้อมูล : แบบลำดับชั้น (Hierarchical Database Model) ข้อดี - รูปแบบโครงสร้างเข้าใจง่าย (Tree) - โครงสร้างซับซ้อนน้อยที่สุด - 1:M Relational - ความปลอดภัยในข้อมูลดี มีความคงสภาพที่ดี (Data Integrity) - เหมาะกับข้อมูลที่มีการเรียงลำดับแบบต่อเนื่อง ข้อเสีย - ยากต่อการพัฒนา ต้องเข้าใจโครงสร้างทางกายภาพของข้อมูล - ไม่รองรับความสัมพันธ์แบบ M:M - Structural Dependent & Data Dependent - ไม่สะดวกในการค้นหาข้อมูลในระดับล่าง - ไม่มี DML ใน DBMS - ขาดมาตรฐานการรองรับที่ชัดเจน

แบบจำลองฐานข้อมูล : แบบเครือข่าย (Network Database Model) ต่างจากแบบลำดับชั้นอย่างไรหน๊อ

แบบจำลองฐานข้อมูล : แบบเครือข่าย (Network Database Model) แบบจำลองฐานข้อมูลแบบเครือข่ายถูกสร้างขึ้น ด้วยเหตุผลที่ เพื่อให้จัดการกับความสัมพันธ์ที่ซับซ้อนที่แบบจำลองฐานข้อมูลแบบลำดับชั้นทำไม่ได้ (M:N)  เพื่อปรับปรุงประสิทธิภาพของฐานข้อมูล

แบบจำลองฐานข้อมูล : แบบเครือข่าย (Network Database Model)   ในแบบจำลองแบบเครือข่ายความสัมพันธ์จะเรียกว่า เซต(set)  ในแต่ละเซตจะประกอบด้วยเรคคอร์ดอย่างน้อย 2 ประเภท คือ Owner และ member  ซึ่งความสัมพันธ์ที่เกิดขึ้นอาจจะเป็นแบบ 1:N หรือ M:N  ซึ่งหมายถึง member สามารถมีความสัมพันธ์กับ Owner ได้หลาย Owner พนักงานขายหนึ่งคนสามารถออกใบส่งของได้หลายใบ  แต่ละใบจะมีชื่อพนักงานขายเพียงชื่อเดียว ลูกค้าคนหนึ่งอาจจะมีการซื้อสินค้าได้หลายครั้ง  จึงอาจจะมีใบส่งของหลายใบและแต่ละใบจะมีชื่อผู้ซื้อได้เพียงหนึ่งชื่อเท่านั้น ใบส่งของแต่ละใบอาจจะมีรายการส่งของในใบแจ้งได้หลายรายการ สินค้าหลาย ๆ รายการสามารถไปปรากฏในใบส่งของได้หลายใบ  *** ปัจจุบันยังคงมีใช้งานอยู่ในระดับ MainFrame ***

แบบจำลองฐานข้อมูล : แบบเครือข่าย (Network Database Model) ข้อดี - รูปแบบโครงสร้างเข้าใจง่าย - สนับสนุนความสัมพันธ์ M:N - มีความยืดหยุ่นในการเข้าถึงข้อมูล - มีความคงสภาพที่ดี (Data Integrity) - DBMS มี DDL และ DML - มีความเป็นมาตรฐาน - Data Independent ข้อเสีย - ระบบโดยรวมยังมีความซับซ้อน และมีข้อจำกัดด้านประสิทธิภาพ - ยากต่อการนำไปใช้ - Structural Dependent

แบบจำลองฐานข้อมูล : เชิงสัมพันธ์ (Relational Database Model) - คิดค้นโดย E.F. Codd (จาก IBM) ในปี 1970  - เป็นแบบจำลองนำเสนอรูปแบบทางแนวคิดที่เข้าใจง่าย - ที่นิยมใช้มากในปัจจุบัน *** - มุมมองข้อมูลมีลักษณะเป็นตารางที่เชื่อมความสัมพันธ์กัน - ใช้ระบบคีย์ (KEY) ในการเชื่อมความสัมพันธ์ Primary Key : PK Foreign Key : FK

แบบจำลองฐานข้อมูล : เชิงวัตถุ (Object-Orineted Database Model) - พัฒนาตามภาษาการโปรแกรมจาก SOP  OOP - มองทุกสิ่งเป็น Object ซึ่งประกอบด้วย Data & Operation - Class - Data Member (Properties , Attribute , Variable) - Method (Function) - ยังคงมีคุณสมบัติของ OOP - Encapsulation  การห่อหุ้ม - Inheritance  การสืบทอด - Abstraction  การสร้างขึ้นมา แต่ยังไม่ระบุรายละเอียด - Polymorphism  Overload - มี OODBMS หรือ ODBMS

แบบจำลองฐานข้อมูล : เชิงวัตถุ (Object-Oriented Database Model)

แบบจำลองฐานข้อมูล : เชิงวัตถุ (Object-Oriented Database Model) ข้อดี - Inheritance ทำให้ข้อมูลมีความคงสภาพสูง - Reusable - การนำเสนอเป็นแบบ Visual ทำให้อธิบายหัวข้อความหมายได้ดี ข้อเสีย - ต้องมีผู้เชี่ยวชาญเฉพาะด้าน - ค่าใช้จ่ายสูง - ยังไม่มีมาตรฐานรองรับ

แบบจำลองฐานข้อมูล : มัลติไดเมนชั่น (Multidimension Database Model) - พัฒนาจากแบบเชิงสัมพันธ์ - Row & Column จะมีลักษณะเป็นลูกบาศก์ (Data Cube) - สามารถมองข้อมูลได้ 2 ทาง เพื่อให้เห็นปัญหาและสร้างวิธีแก้ได้ดี - ใช้แบบจำลอง Star Schema ในการออกแบบ - มี Fact Table เก็บ fields ทั้งหมดที่จะวัด - มีตาราง Dimension สำหรับ Join กับ Fact Table - ถูกนำไปใช้งานกับคลังข้อมูล (Data Warehousing) - ใช้การเข้าถึงข้อมูลโดยระบบ OLAP * OLAP : OnLine Analytical Processing (ระบบประมวลผลเชิงวิเคราะห์แบบต่อตรง)

แบบจำลองฐานข้อมูล : มัลติไดเมนชั่น (Multidimension Database Model)

แบบจำลองฐานข้อมูล : มัลติไดเมนชั่น (Multidimension Database Model) ข้อดี - สามารถนำไปใช้เพื่อวางแผนและสร้างวิธีแก้ปัญหาทางธุรกิจได้ - สามารถนำเสนอข้อมูลได้หลายมุมมอง ข้อเสีย - ต้องมีผู้เชี่ยวชาญเฉพาะด้าน - ค่าใช้จ่ายสูง ในส่วนของ HW & SW เพื่อใช้ในการวิเคราะห์ - เหมาะกับธุรกิจขนาดใหญ่

โครงสร้างข้อมูลเชิงสัมพันธ์ (Relational Data Structure) Attribute (Field, Column) Primary Key : PK Tuple (Record, Row) Cardinality Foreign Key : FK Relation (Table,File) Degree Domain : Rang of Data in each Field

กฎ 12 ข้อของคอดด์ (Codd’s 12 Relational Database Model) Information Guaranteed Access Systematic Treatment of Null Dynamic On-Line Catalog Based on the Relational Model Comprehensive Data Sublanguage View Updating High-Level Insert, Update and Delete Physical Data Independence Logical Data Independence Integrity Independence Distribution Independence Nonsubversion

ฐานข้อมูลเชิงสัมพันธ์ (Database Relations)

คุณสมบัติของรีเลชั่น (Properties of Relations) รีเลชั่นต้องมีชื่อกำกับ ซึ่งซ้ำกันไม่ได้ แต่ละ Attribute เก็บค่าได้เพียงค่าเดียว (Atomic : Single Value) แต่ละ Attribute ต้องมีชื่อกำกับ ซึ่งซ้ำกันไม่ได้ ข้อมูลในแต่ละ Attribute ต้องเป็นไปตามข้อกำหนดของ Domain ข้อมูลในแต่ละ Tuple ต้องมีความแตกต่างจะต้องไม่มี Tuple ที่ซ้ำกัน การเรียงลำดับของแต่ละ Attribute ไม่มีความสำคัญใดๆ การเรียงลำดับของ Tuple ไม่มีความสำคัญใดๆ

คีย์ (Keys) การกำหนด Attribute หรือกลุ่มของ Attributes เป็น Key เพื่อให้แต่ละ Tuple มีความแตกต่างกัน การกำหนด Key ให้กับ Relation เพื่อให้สามารถนำ Key ไประบุ Tuple ใน Relation ตามต้องการได้

Alternate Key / Secondary Key Composite/Concatenated/Compound Key Candidate Key : CK Primary Key : PK Alternate Key / Secondary Key Foreign Key : FK Composite/Concatenated/Compound Key Super Key