chapter01 introduction and conceptual modeling

10

Click here to load reader

Transcript of chapter01 introduction and conceptual modeling

Page 1: chapter01 introduction and conceptual modeling

2110422 การออกแบบระบบการจัดการฐานขอมูล 1-1 ภาควิชาวิศวกรรมคอมพิวเตอร คณะวิศวกรรมศาสตร จุฬาลงกรณมหาวิทยาลัย

บทที่ 1* ฐานขอมูลเบื้องตนและแบบจําลองเชิงแนวคิด Introduction and Conceptual Modeling

วัตถุประสงค 1. เพื่อใหมีความเขาใจในฐานขอมูลเบื้องตน

2. เพื่อใหมีความเขาใจในแบบจําลองเชิงแนวคิด

3. เพื่อใหมีความเขาใจในเรื่องกลยุทธฐานขอมูล และ สามารถนําไปประยุกตใชในการออกแบบฐานขอมูลตอไปได

4. เพื่อใหมีความเขาใจในการเขาใชขอมูลและสามารถแยกประเภทของผูใชขอมูลได 5. เพื่อใหมีความเขาใจในเรื่องของวิวัฒนาการฐานขอมูล

1.1 ชนิดของฐานขอมูลและแอปพลิเคชันของฐานขอมูล ในชีวิตประจําวันเรามักจะพบหรือตองใชฐานขอมูลอยูเสมอและอาจทําไปโดยไมรูตัว เชน การถอนเงินผานเอทีเอ็ม

การจองตั๋วเครื่องบิน การยืมหนังสือจากหองสมุด เปนตน โดยทั่วไปแลัวขอมูลในฐานขอมูลน้ันอาจเปนขอความ

(Text) หรือตัวเลข (Numeric) แตก็มีฐานขอมูลชนิดพิเศษอีกหลายชนิดที่ควรรูจัก เชน • ฐานขอมูลมัลติมีเดีย (Multimedia Database) ที่สามารถรองรับรูปภาพ คลิปวีดิทัศน (Video

Clips) รวมทั้งขอความเสียงดวย • ฐานขอมูลทางภูมิศาสตร (Geographical Database) ที่สามารถจัดเก็บขอมูลแผนที่ ขอมูลภูมิอากาศ

หรือภาพถายดาวเทียม • คลังขอมูล (Data Warehouse) มีความสามารถในการสกัด (Extract) ขอมูลจากขอมูลจํานวนมาก

และมีเครื่องมือที่ชวยในการวิเคราะหขอมูลเพื่อใชในการตัดสินใจ • ฐานขอมูลแบบทันกาลเชิงรุก (Real-time and Active Database) ซ่ึงมีความสามารถพิเศษในการ

ควบคุมกระบวนงานในงานอุตสาหกรรมและการผลิต

1.1.1 ฐานขอมูล (Database) ฐานขอมูล (Database) คือกลุมของขอมูลที่เก่ียวของกัน และขอมูล (Data) คือขอเท็จจริงที่สามารถบันทึกไดและมีความหมายโดยปริยาย คุณสมบัติของฐานขอมูล

• สามารถเปนตัวแทนเหตุการณหรือเปนแบบจําลองของปญหาจริง ซ่ึงสามารถเรียกไดวา มินิเวิรลด

(Mini-world) มินิเวิรลดคือแบบจําลองปญหาจริง หรือสวนหนึ่งของปญหาจริงที่ขอมูลในฐานขอมูลน้ันเก่ียวของ เชน ฐานขอมูลการลงทะเบียนของนิสิตในมหาวิทยาลัย

• ขอมูลที่เก็บไวในฐานขอมูลเดียวกันควรมีความเกี่ยวของกันและมีความหมายในตัวเอง • ไดถูกออกแบบ สราง และบรรจุขอมูลลงในฐานขอมูลเพื่อวัตถุประสงคอันใดอันหนึ่งที่แนชัด

1.1.2 ระบบฐานขอมูล (Database System) ระบบการจัดการฐานขอมูล (Database Management System-DBMS) คือ ซอฟตแวรที่ใชในการสรางและ

บํารุงรักษาขอมูลและฐานขอมูลในคอมพิวเตอร

* อางอิงจากบทที่ 1 ของเอกสารอางอิง [1]

Page 2: chapter01 introduction and conceptual modeling

2110422 การออกแบบระบบการจัดการฐานขอมูล 1-2 ภาควิชาวิศวกรรมคอมพิวเตอร คณะวิศวกรรมศาสตร จุฬาลงกรณมหาวิทยาลัย

ระบบฐานขอมูล (Database System) คือ ซอฟตแวรระบบการจัดการฐานขอมูล (DBMS) พรอมกับขอมูล

บางครั้งอาจรวมถึงแอปพลิเคชันดัวย

รูปที่ 1.1 ระบบฐานขอมูล

ลักษณะเฉพาะและความสามารถของระบบการจัดการฐานขอมูล

• สามารถกําหนดคุณลักษณะของฐานขอมูล ตั้งแตขนิดของขอมูล (Data type) โครงสรางของขอมูล

(Structure) และเงื่อนไขบังคับ (Constraint) ตางๆ • สรางฐานขอมูลและบรรจุขอมูลลงฐานขอมูลลงในหนวยเก็บ (Secondary storage) • จัดดําเนินการ (Manipulate) ฐานขอมูล เชนการสืบคน (Query) การจัดทํารายงาน การเพื่ม

(Insertion) การลบ (Deletion) การแกไข (Modification) ขอมูล • ทําการประมวลผลพรอมกันและใชขอมูลรวมกัน (Concurrent processing and sharing) โดย

สามารถมีผูใชงานหลายคนพรอมกันได มีโปรแกรมหลายโปรแกรมทํางานพรอมกันได โดยที่ขอมูลยังคง

ความถูกตอง • สามารถจัดการปองกันและดูแลความปลอดภัย ผานทางการตรวจสอบการเขาถึงที่ไมไดรับการอนุญาต

(Unauthorized access) การจัดการดานความมั่นคงของขอมูลเมื่อซอฟตแวรหรือฮารดแวรมีปญหา • สามารถทําการปรับปรุงและบํารุงรักษาฐานขอมูล และปรับเปลี่ยนระบบไปตามความตองการที่เปลี่ยนไป

1.2 ตัวอยาง

มินิเวิรลด – สวนของ University environment เอนทิตีของมินิเวิรลด

• STUDENTs • COURSEs • SECTIONs (of COURSEs) • (academic) DEPARTMENTs • INSTRUCTORs

จากมินิเวิรลดนี้ เราสามารถเขียน Entity-Relationship data model เพื่อแสดงความสัมพันธของเอนทิตีในระดับแนวคิด (Conceptual) ความสัมพันธของมินิเวิรลด

• SECTIONs เปนสวนยอยของ COURSEs หน่ึงๆ • STUDENTs เลือก SECTIONs • COURSEs ตองมี COURSEs เบื้องตน • INSTRUCTORs สอน SECTIONs • COURSEs กําหนดโดย DEPARTMENTs • STUDENTs มีสังกัด DEPARTMENTs

Page 3: chapter01 introduction and conceptual modeling

2110422 การออกแบบระบบการจัดการฐานขอมูล 1-3 ภาควิชาวิศวกรรมคอมพิวเตอร คณะวิศวกรรมศาสตร จุฬาลงกรณมหาวิทยาลัย

จากมินิเวิรลดนี้ เราสามารถเขียนโมเดลแบบ E-R (ENTITY-RELATIONSHIP data model) เพื่อแสดงความสัมพันธของเอนทิตีในระดับแนวคิด (Conceptual) ไดดังน้ี

รูปที่ 1.2 ก ฐานขอมูลสําหรับเก็บ

ขอมูลนักศึกษา

(STUDENTs) และรายวิชา

(COURSEs)

รูปที่ 1.2 ข ฐานขอมูลสําหรับเก็บ

ขอมูลตอนเรียน (SECTIONs)

รูปที่ 1.2 ค ฐานขอมูลสําหรับเก็บ

ขอมูลรายงานผล

การศึกษา

(GRADE_REPORTs)

และรายวิชาพื้นฐาน (PREREQUISITE

s) 1.3 ลักษณะสําคัญของการใชกลยุทธฐานขอมูล

1.3.1 ธรรมชาติในการบรรยายตนเองของระบบฐานขอมูล (Self-describing nature of a database system)

• Catalog ของ DBMS จะเก็บ definition หรือ description ของฐานขอมูล • Definition ประกอบดวย โครงสรางไฟล ชนิด รูปแบบของขอมูล และขอบังคับตางๆ • Description หรือเรียกวา meta-data ดังแสดงในรูปที่ 1.1 เปนสวนที่ทําใหซอฟตแวร DBMS

สามารถทํางานกับฐานขอมูลอื่นๆได

1.3.2 การไมข้ึนตอกันระหวางโปรแกรมและขอมูล ระบบฐานขอมูลจะอนุญาตใหทําการเปลี่ยนแปลงโครงสรางของหนวยเก็บขอมูล และการจัดการ (Operation) ตางๆ โดยไมจําเปนตองเปลี่ยนโปรแกรมการเขาถึง DBMS (DBMS access programs) เน่ืองจากโครงสราง

Page 4: chapter01 introduction and conceptual modeling

2110422 การออกแบบระบบการจัดการฐานขอมูล 1-4 ภาควิชาวิศวกรรมคอมพิวเตอร คณะวิศวกรรมศาสตร จุฬาลงกรณมหาวิทยาลัย

ของไฟลขอมูลน้ันถูกแยกออกจากโปรแกรมการเขาถึง (Access program) ซ่ึงไมเหมือนกระบวนการจัดการไฟล (File processing) แบบดั้งเดิมที่โครงสรางของไฟลขอมูลจะถูกฝงติดกับโปรแกรมแอปพลิเคชัน จึงตองทําการ

เปลี่ยนแปลงโปรแกรมทั้งหมดเมื่อตองการเปลี่ยนโครงสรางไฟล

รูปที่ 1.3 รูปแบบของหนวย

เก็บขอมูลภายใน

สําหรับเก็บระเบียน

นักศึกษา

1.3.3 Data abstraction หรือ Program-Operation Independence ในระบบ Object-Oriented และ Object-Relational น้ัน ผูใชสามารถระบุการจัดการใหกับขอมูลในรูปแบบของ

นิยามฐานขอมูล (Database definition) โดยการจัดการ (Operation) ใดๆ ซ่ึงอาจจะเปนฟงกชันหรือเมทอดนั้น

ประกอบดวย 2 สวน คือ • สวนติดตอกับผูใช (Interface) หรือ Signature ซ่ึงประกอบดวย ชื่อคําส่ังและ argument

(พารามิเตอร) ตางๆ • การปฏิบัติการ (Implementation) หรือวิธีการ (method) น้ันถูกระบุแยกออกมา ดังน้ันจึงสามารถทํา

การเปลี่ยนแปลงไดโดยไมกระทบสวนติดตอผูใช ซ่ึงเรียกวา Program-Operation Independence แบบจําลองขอมูล (Data model) จัดเปน Data abstraction ชนิดหนึ่ง ที่ใชในการซอนรายละเอียดของหนวยเก็บขอมูล และนําเสนอในรูปของมุมมองระดับแนวคิด (Conceptual view) ของฐานขอมูลใหกับผูใช จากน้ัน DBMS จะทําการดึงรายละเอียดของหนวยเก็บไฟลจาก Catalog

1.3.4 สนับสนุนการพิจารณาขอมูลจากหลายมุมมอง ผูใชแตละคนสามารถพิจารณาฐานขอมูลในมุมมอง (View) ที่แตกตางกัน ซ่ึงอธิบายเฉพาะสวนของขอมูลที่ผูใช

สนใจเทาน้ัน ซ่ึงมุมมองประกอบดวย ขอมูลที่อนุมานไดจากไฟลฐานขอมูล แตไมไดถูกเก็บไวในฐานขอมูลอยาง

ชัดเจน

รูปที่ 1.4 แสดงสองมุมมองท่ีได

จากฐานขอมูล

(ก) มุมมอง

STUDENT TRANSCRIPT

(ข) มุมมอง

COURSE PREREQUISITES

1.3.5 การใชขอมูลรวมกัน (Sharing) และการดําเนินการโดยกลุมผูใช (Multiuser transaction processing)

ผูใชหลายคนมีสิทธ์ิในการรวมกันแกไขและปรับปรุงฐานขอมูลได โดยตองมีการรับรองจาก DBMS วาแตละการดําเนินการ (Transaction) จะตองถูกปฏิบัติการ (Execute) อยางถูกตองจนครบสมบูรณ หรือไมเชนน้ันก็ตองไมมีการดําเนินการใดๆเลย ซ่ึงนับวาเปนสวนสําคัญมากสําหรับแอปพลิเคชันประเภทออนไลน หรือที่เรียกวา แอป

พลิเคชัน OLTP (Online Transaction Processing) ซ่ึงการดําเนินการ (Transaction) น้ันหมายถึง

โปรแกรมหรือกระบวนการปฏิบัติการ ที่ทําการเขาถึงฐานขอมูลตั้งแตหน่ึงครั้งขึ้นไป เชน การอาน การแกไข เปนตน

Page 5: chapter01 introduction and conceptual modeling

2110422 การออกแบบระบบการจัดการฐานขอมูล 1-5 ภาควิชาวิศวกรรมคอมพิวเตอร คณะวิศวกรรมศาสตร จุฬาลงกรณมหาวิทยาลัย

1.4 ผูใชฐานขอมูล เราสามารถจัดแบงผูใชออกเปน 2 ประเภทหลักๆ ดังน้ี

• ผูมีบทบาทเบื้องหนา (Actors on the Scene) ไดแก ผูที่ใชและควบคุมเน้ือหาของฐานขอมูล • ผูมีบทบาทเบื้องหลัง (Actor behind the Scene) ไดแก ผูที่พัฒนาฐานขอมูลหรือออกแบบซอฟตแวร

DBMS 1.4.1 ผูมีบทบาทเบื้องหนา (Actors on the Scene)

• ผูบริหารฐานขอมูล (Database administrators : DBA) มีหนาที่ดังตอไปนี้ - มีอํานาจในการใหสิทธิ์การเขาถึงฐานขอมูล - ประสานงานและดูแลการใชฐานขอมูล - จัดหาทรัพยากรทางดานซอฟตแวรและฮารดแวร - ควบคุมการใชฐานขอมูลและตรวจสอบประสิทธิภาพของการจัดการ (Operation) - แกไขปญหาตางๆ เชน ชองวางของระบบความปลอดภยั และปญหาเวลาการตอบสนองต่ํา

• ผูออกแบบฐานขอมูล (Database Designers) มีหนาที่ดังตอไปนี้ - ระบุเน้ือหา โครงสราง ขอบังคับ (Constraint) รวมถึงฟงกชันหรือการดําเนินการ

(Transaction) ตางๆ ที่เก่ียวของกับฐานขอมูล - ติดตอและทําความเขาใจความตองการของผูใชปลายทาง

• ผูใชปลายทาง (End-user) มีหนาที่ดังตอไปนี้ - ใชขอมูลในการสืบคน (Query) และจัดทํารายงาน - ผูใชปลายทางบางสวนอาจทําหนาที่ในการปรับปรุงเน้ือหาของฐานขอมูลอีกดวย

1.4.2 ผูมีบทบาทเบื้องหลัง (Actors behind the Scene)

• ผูออกแบบและพัฒนาระบบ DBMS - ออกแบบและพัฒนาสวนตางๆ รวมทั้งสวนติดตอกับผูใช ในรูปแบบของชุดซอฟตแวร

• ผูพัฒนาเครื่องมือ (Tool Developers) - พัฒนาเครื่องมือ หรือทูล (Tool) ซ่ึงเปนชุดซอฟตแวรที่ชวยในการออกแบบระบบฐานขอมูล

และชวยในการพัฒนาผลงาน • ผูปฏิบัติงานและดูแลรักษา (Operators and Maintenance Personnel)

- ส่ังดําเนินการ (Run) รวมถึงดูแลฮารดแวรและซอฟตแวรของระบบฐานขอมูล

1.4.3 ประเภทของผูใชปลายทาง (End-user)

• ผูใชชั่วคราว (Casual) - เปนผูใชที่ทําการเขาถึงฐานขอมูลเปนครั้งคราวเมื่อตองการ

• Naïve or Parametric - ผูใชปลายทางสวนใหญน้ันถูกจัดอยูในกลุมน้ี โดยมีหนาที่ในการใชฟงกชันตางๆที่ถูกกําหนด

มาเรียบรอยแลวในรูปแบบของ “การดําเนินการแบบสําเร็จรูป (canned transaction)” กับ

ระบบฐานขอมูล เชน พนักงานรับและจายเงินในธนาคาร พนักงานสํารองที่ เปนตน • Sophisticated

- ผูใชประเภทนี้ประกอบดวย นักวิเคราะหธุรกิจ นักวิทยาศาสตร วิศวกร รวมถึงผูใชอื่นๆที่มี

ความคุนเคยกับสมรรถภาพของระบบ • Stand- alone

- สวนมากมักจะเปนผูที่ดูแลฐานขอมูลสวนบุคคลโดยใชชุดแอปพลิเคชันพรอมใช เชน ผูใช

โปรแกรมคํานวณภาษี ซ่ึงสรางฐานขอมูลภายในขึ้นมาเอง เปนตน

Page 6: chapter01 introduction and conceptual modeling

2110422 การออกแบบระบบการจัดการฐานขอมูล 1-6 ภาควิชาวิศวกรรมคอมพิวเตอร คณะวิศวกรรมศาสตร จุฬาลงกรณมหาวิทยาลัย

1.5 ขอดีในการใชกลยุทธฐานขอมูล • สามารถควบคุมความซ้ําซอน (Redundancy) ในการจัดเก็บขอมูล รวมถึงความยากลําบากในการ

พัฒนาและดูแลรักษา ซ่ึงความซ้ําซอนของขอมูลน้ันเปนสาเหตุของปญหามากมาย เชน - จําเปนตองทําการปรับปรุงหรือแกไขขอมูลเดียวกันหลายครั้ง - ส้ินเปลืองพื้นที่ในการเก็บขอมูล - ไฟลที่เสนอขอมูลเดียวกันอาจมีการจัดเก็บขอมูลที่ไมตรงกันได - สามารถใชขอมูลรวมกันได

• ปองกันการเขาถึงขอมูลโดยไมไดรับอนุญาต

รูปที่ 1.5 การเก็บขอมูลที่ซํ้าซอน

ของ StudentName และ CourseNumber

ใน

GRADE_REPORT (ก) กรณีขอมูลตรงกัน

(ข) กรณีที่ขอมูลไม

ตรงกัน

• สามารถเตรียมหนวยเก็บขอมูลที่ม่ันคง (Persistent storage) สําหรับโปรแกรม Objects (ใน

Object-oriented DBMS’s – บทที่ 20-22) • จัดเตรียมโครงสรางหนวยเก็บขอมูลเพื่อใหสามารถดําเนินการสืบคน (Query) ไดอยางมีประสิทธิภาพ

โดยDBMS จะตองมีโครงสรางขอมูลพิเศษ เพื่อทําใหการคนขอมูลในดิสครวดเร็วยิ่งขึ้น ซ่ึงทําไดโดยการ

ใชดัชนี (Indexes) • สามารถทําการสํารอง (Backup)และฟนสภาพขอมูล (Recovery) • มีสวนการติดตอผูใชหลากหลายรูปแบบสําหรับผูใชในกลุมตางๆกัน ซ่ึงประกอบดวย ภาษาสืบคน

(Query language) ภาษาโปรแกรม (Programming language) แบบฟอรมและโคดคําส่ัง (Form and Command code) และ Menu-driven interface

• สามารถนําเสนอความสัมพันธที่ซับซอนของขอมูลได • มีการกําหนดขอบังคับในการควบคุมความคงสภาพ (Integrity constraints) • สนับสนุนการอนุมาน (Inference) ขอมูลใหมๆจากขอเท็จจริงที่เก็บไวในฐานขอมูล รวมถึงการ

ดําเนินการ (Action) ตางๆโดยใชกฎเกณฑ

1.5.1 สิ่งที่เกี่ยวของเพิ่มเติมในการใชกลยุทธฐานขอมูล

• มีศักยภาพในการควบคุมมาตรฐาน ซ่ึงนับวาเปนสวนที่สําคัญมากของแอปพลิเคชันฐานขอมูลที่ประสบ

ความสําเร็จในองคกรใหญๆ โดยมาตรฐานในที่น้ี หมายถึง ชื่อรายการขอมูล รูปแบบการแสดงภาพ

หนาจอ โครงสรางรายงาน และ meta-data (นิยามของขอมูล) เปนตน • สามารถลดเวลาในการพัฒนาแอปพลิเคชัน โดยทําใหเวลาที่ใชในการเพิ่มแอปพลิเคชันใหมน้ันลดลง • มีความยืดหยุนในการเปลี่ยนแปลงโครงสรางขอมูล โดยโครงสรางขอมูลสามารถเปลี่ยนแปลงไปตาม

ความตองการท่ีระบุได • มีการปรับขอมูลใหทันสมัยอยูตลอดเวลา ซ่ึงเปนส่ิงสําคัญมากสําหรับธุรกิจออนไลน เชน สายการบิน

โรงแรม การเชารถ เปนตน • Economies of scale โดยการรวบรวมขอมูลและแอปพลิเคชันระหวางแผนก ซ่ึงสามารถลดความ

ส้ินเปลืองเน่ืองจากความซ้ําซอนของทรัพยากรและบุคคลได

Page 7: chapter01 introduction and conceptual modeling

2110422 การออกแบบระบบการจัดการฐานขอมูล 1-7 ภาควิชาวิศวกรรมคอมพิวเตอร คณะวิศวกรรมศาสตร จุฬาลงกรณมหาวิทยาลัย

1.6 วิวัฒนาการของ DBMS (โดย James Martin) • ชวงที่ 1 : ไฟลขอมูลพื้นฐาน (Elementary Data Files) – มีอิทธิพลในชวงตนทศวรรษที่ 60 • ชวงที่ 2 : กระบวนการเขาถึงไฟล (File Access Method) – มีอิทธิพลในชวงปลายทศวรรษที่ 60 • ชวงที่ 3 : ระบบฐานขอมูลในชวงแรกเริ่ม (Early Database System) – มีอิทธิพลในชวงตนทศวรรษที่

70 • ชวงที่ 4 : ระบบฐานขอมูลในปจจุบัน (Today Database System) – ตั้งแตป 1970 จนถึงปจจุบัน

1.6.1 ชวงที่ 1 : ไฟลขอมูลพื้นฐาน (Elementary Data Files)

• ในการจัดระบบไฟลในรูปแบบลําดับอนุกรม (Serial manner) • โครงสรางขอมูลทางกายภาพ (Physical data structure) มีลักษณะเดียวกับโครงสรางขอมูลทางตรรก

(Logical data structure) • ใชกระบวนการจัดการแบบกลุม (Batch-processing) โดยไมมีการเขาถึงขอมูลแบบทันกาล (real-

time) • มีการจัดเก็บไฟลที่ซํ้าซอน เน่ืองจากขอมูลเดิมยังคงถูกเก็บไว • ซอฟตแวรสามารถจัดการไดเพียงขั้นตอน input/output เทาน้ัน • ผูพัฒนาโปรแกรมแอปพลิเคชันจะทําการออกแบบรูปแบบทางกายภาพและฝงติดไวกับโปรแกรมแอป

พลิเคชัน • ถามีการเปลี่ยนแปลงโครงสรางขอมูลหรือสวนควบคุมการเก็บขอมูล (Storage device) จะตองทําการ

เขียนโปรแกรมแอปพลิเคชันใหม รวมทั้งแปลงภาษาและทดลองโปรแกรมใหมอีกดวย • ขอมูลมักจะถูกออกแบบใหทํางานอยางมีประสิทธิภาพกับแอปพลิเคชันหนึ่งๆเทาน้ัน • เกิดการซ้ําซอนระหวางไฟลขอมูลมาก

รูปที่ 1.6 ชวงที่ 1 :

ไฟลขอมูลพื้นฐาน

(Elementary Data Files) (มีอิทธิพลในชวงตน

ทศวรรษที่ 60)

1.6.2 ชวงที่ 2 : กระบวนการเขาถึงไฟล (File Access Method)

• สามารถทําการบันทึกไดโดยการเขาถึงขอมูลแบบตามลําดับ (Serial access) หรือแบบสุม (Random access) (ไมใชการบันทึกลงในขอบเขตของขอมูล (Field))

• ใชกระบวนการจัดการแบบกลุม (Batch) แบบอินไลน (In-line) หรือแบบทันกาล (Real-time) • ไฟลทางตรรก (Logical file) และไฟลทางกายภาพ (Physical file) น้ันแยกออกจากกัน • สามารถทําการเปลี่ยนแปลงหนวยเก็บขอมูลไดโดยไมจําเปนตองทําการเปลี่ยนแปลงโปรแกรมแอปพลิเค

ชัน

Page 8: chapter01 introduction and conceptual modeling

2110422 การออกแบบระบบการจัดการฐานขอมูล 1-8 ภาควิชาวิศวกรรมคอมพิวเตอร คณะวิศวกรรมศาสตร จุฬาลงกรณมหาวิทยาลัย

• โครงสรางขอมูล มักอยูในรูปแบบลําดับอนุกรม (Serial) ลําดับเชิงดัชนี (Index sequential) หรือ

Simple direct access • ไมมีการใชมัลติเพิลคีย (Multiple-key) หรือคียหลายตัวในการสืบคนขอมูล • อาจมีการตรวจสอบความปลอดภัยของขอมูล แตนับวายังไมคอยปลอดภัย • ยังคงมีแนวโนมที่จะออกแบบขอมูลใหมีประสิทธิภาพกับแอปพลิเคชันหนึ่งๆอยู • ยังคงพบความซ้ําซอนของขอมูลจํานวนมากอยู

รูปที่ 1.7 ชวงที่ 2 :

กระบวนการเขาถึง

ไฟล (File Access Method) (มี

อิทธิพลในชวงปลาย

ทศวรรษที่ 60)

1.6.3 ชวงที่ 3 : ระบบฐานขอมูลในชวงแรกเริ่ม (Early Database System) • สามารถอนุมานไฟลทางตรรก (Logical file) ที่แตกตางกันไดมากมาย จากขอมูลทางกายภาพ

(Physical data) เดียวกัน • สามารถเขาถึงขอมูลเดียวกันไดจากหลายทาง by applications with different requirements • ซอฟตแวรมีความสามารถในการลดความซ้ําซอนของขอมูล • มีการใชขอมูลรวมกันระหวางแอปพลิเคชันตางๆ • การไมมีความซ้ําซอนของขอมูล เอื้อตอความคงสภาพของขอมูล (Data integrity) • การจัดระบบหนวยเก็บขอมูลทางกายภาพ (Physical data) น้ันไมขึ้นกับโปรแกรมแอปพลิเคชัน • สามารถกําหนดตําแหนงที่อยูของขอมูลในขอบเขตของขอมูล (Filed) หรือในระดับกลุม (group level) • สามารถใชมัลติเพิลคีย (Multiple-key) หรือคียหลายตัวในการสืบคนได • ใชการจัดระบบขอมูลที่ซับซอนโดยไมทําใหโปรแกรมแอปพลิเคชันซับซอน

Page 9: chapter01 introduction and conceptual modeling

2110422 การออกแบบระบบการจัดการฐานขอมูล 1-9 ภาควิชาวิศวกรรมคอมพิวเตอร คณะวิศวกรรมศาสตร จุฬาลงกรณมหาวิทยาลัย

รูปที่ 1.8 ชวงที่ 3 : ระบบฐานขอมูลในชวง

แรกเริ่ม (Early Database

System) (มีอิทธิพลในชวงตน

ทศวรรษที่ 70)

1.6.4 ชวงที่ 4 : ความตองการของระบบฐานขอมูลในปจจุบัน (Today’s Requirements in Database System)

• ซอฟตแวรมีขอมูลทางตรรก (Logical data) และทางกายภาพ (Physical data) ที่ไมขึ้นตอกัน • สามารถทําการพัฒนาฐานขอมูลใหดีขึ้น โดยไมตองทําการดูแลรักษามาก • มีสวนอํานวยความสะดวก (Facility) ใหผูบริหารฐานขอมูล ในการควบคุมขอมูล • มีการใชขั้นตอนที่มีประสิทธิภาพในการควบคุมความเปนสวนบุคคล ความปลอดภัย และความคงสภาพ

(Integrity) ของขอมูล

รูปที่ 1.9 ชวงที่ 4 : ความ

ตองการของระบบ

ฐานขอมูลใน

ปจจุบัน (Today’s Requirements in

Database System)

1.7 ประวัติการพัฒนาเทคโนโลยีฐานขอมูล

• แอปพลิเคชันฐานขอมูลในชวงแรก (Early Database Application) มีการนําเสนอโมเดลแบบแตกสาขา (Hierarchical model) และโมเดลแบบเครือขาย (Network model) ในชวงกลางทศวรรษที่ 60 และมีอิทธิพลในชวงทศวรรษที่ 70 ซ่ึงยังคงพบการใชโมเดลเหลาน้ี

ในการปฏิบัติการฐานขอมูลทั่วโลกจํานวนมาก (a bulk of world wide database processing)

Page 10: chapter01 introduction and conceptual modeling

2110422 การออกแบบระบบการจัดการฐานขอมูล 1-10 ภาควิชาวิศวกรรมคอมพิวเตอร คณะวิศวกรรมศาสตร จุฬาลงกรณมหาวิทยาลัย

• ระบบที่ใชพื้นฐานของโมเดลความสัมพันธ (Relational Model based Systems) IBM และมหาวิทยาลัยตางๆไดทําการวิจัยและทดลองแบบจําลองที่ไดนําเสนอในชวงป 1970 เปนอยาง

หนัก ซ่ึงทําใหเกิดเปน DBMS เชิงสัมพันธ (Relational DBMS Products) ขึ้นในชวงทศวรรษที่ 80 • Object-oriented applications

ไดมีการนําเสนอ OODBMSs (Object-Oriented Database Management System) ขึ้นในชวงปลายทศวรรษที่ 80 ถึงตนทศวรรษที่ 90 เพื่อสนองความตองการในการประมวลผลที่ซับซอนใน

โปรแกรมชวยการออกแบบหรือ CAD (Computer Aided Design) และแอปพลิเคชันอื่นๆ แตการใช

งานยังไมเปนที่นิยมมากนัก

• ขอมูลในเว็บ (Web) และแอปพลิเคชันการคาอิเล็กทรอนิกส (E-commerce Applications) เว็บบรรจุขอมูลในรูปแบบของ HTML (Hypertext Markup Language) โดยมีการเชื่อมโยงระหวางหนา กอใหเกิดการพัฒนาแอปพลิเคชันใหมๆขึ้นจํานวนมาก รวมถึงการคาอิเล็กทรอนิกส (E-commerce) ซ่ึงปจจุบันใชมาตรฐานใหม คือ XML (eXtended Markup Language)

1.7.1 การขยายความสามารถ (Capability) ของฐานขอมูล มีการเพิ่มฟงกชันใหมๆใหกับ DBMSs ในดานตางๆ ดังตอไปนี้

• แอปพลิเคชันทางวิทยาศาสตร • หนวยเก็บและจัดการขอมูลภาพ • การจัดการขอมูล Audio และ Video • การคนขอมูล (Data Mining) • Spatial data management • การจัดการขอมูลลําดับเวลาและประวัติขอมูล (Time Series and Historical Data Management)

ซ่ึงทั้งหมดนี้ทําใหเกิดความกาวหนาในการวิจัยและพัฒนาขอมูลชนิดใหมๆ โครงสรางขอมูลที่ซับซอน คําส่ังและ

หนวยเก็บขอมูลใหมๆ รวมทั้งการเก็บดัชนี (Index schemes) ในระบบฐานขอมูล

1.8 กรณีที่ไมควรใช DBMS

• ขอเสียหลักของการใช DBMS คือคาใชจายที่สูง อันเน่ืองมากจาก - การลงทุนเริ่มตนทางดานฮารดแวรสูง - คาใชจายในการใหกําหนดกฎทั่วไป (Generality) รวมถึงใหความปลอดภัย (Security)

การควบคุมรวมกัน (Concurrency control) การฟนสภาพ (Recovery) และฟงกชันควบคุมความคงสภาพ (Integrity function)

• กรณีที่ไมจําเปนตองใช DBMS - เม่ือฐานขอมูลและแอปพลิเคชันมีลักษณะไมซับซอน มีการระบุที่ชัดเจน และไมตองการการ

เปลี่ยนแปลงใดๆ - เม่ือตองการความทันกาลตลอดเวลา ซ่ึงอาจทําไมไดเน่ืองจากคาใชจายที่สูงของ DBMS - เม่ือไมตองการใหผูใชเขาถึงขอมูลไดหลายๆคน

• กรณีที่ DBMS ไมมีความสามารถเพียงพอ - เม่ือระบบฐานขอมูลไมสามารถจัดการกับขอมูลที่ซับซอน เน่ืองมาจากขอจํากัดของโมเดล - เม่ือผูใชฐานขอมูลตองการคําส่ังพิเศษที่ไมมีใน DBMS

แบบฝกหัด 1. อธิบายแนวคิดในการจัดการฐานขอมูล 2. อธิบายแนวคิดของ DBMS 3. จงเปรียบเทียบความแตกตางของ DBMS และ File Processing