700 likes | 944 Views
Chapter 1 : Introduction to Database System. ระบบฐานข้อมูล 3(2-2 -5 ). วัตถุประสงค์. ทราบถึงวิวัฒนาการในการจัดการข้อมูล สามารถบอกโครงสร้างแฟ้มข้อมูล ชนิดของข้อมูลประเภทต่าง ๆได้ สามารถบอกประเภทของแฟ้มข้อมูล และวิธีการจัดโครงสร้างแฟ้มข้อมูลได้
E N D
Chapter 1 : Introduction to Database System ระบบฐานข้อมูล 3(2-2-5)
วัตถุประสงค์ • ทราบถึงวิวัฒนาการในการจัดการข้อมูล • สามารถบอกโครงสร้างแฟ้มข้อมูล ชนิดของข้อมูลประเภทต่าง ๆได้ • สามารถบอกประเภทของแฟ้มข้อมูล และวิธีการจัดโครงสร้างแฟ้มข้อมูลได้ • เข้าใจหลักการทำงานของระบบแฟ้มข้อมูล และบอกข้อดี/ข้อเสียได้ • เข้าใจหลักการทำงานของระบบฐานข้อมูล และบอกข้อดี/ข้อเสียได้ • ทราบถึงความสำคัญและหน้าที่การทำงานของ DBMS • บอกส่วนประกอบของสภาพแวดล้อมของ DBMS ได้
ชีวิตประจำวันกับฐานข้อมูล (Database) • การใช้ชีวิตประจำวัน • เราสัมพันธ์กับ Database อะไรบ้าง?
บทนำ ฐานข้อมูล (Database)มีบทบาทสำคัญมากต่องานด้านต่างๆ โดยเฉพาะงานที่ใช้คอมพิวเตอร์ เช่น - งานด้านธุรกิจ - งานด้านวิศวกรรม - ด้านการแพทย์ - การศึกษา - วิทยาศาสตร์ ฯลฯ เพื่อทำการจัดการข้อมูลอย่างมีระบบ
การจัดการข้อมูล (Data Management)
โครงสร้างแฟ้มข้อมูล • บิต(bit): ประกอบไปด้วยเลขฐานสอง ใช้แทนค่าหน่วยที่เล็กที่สุดของข้อมูลคอมพิวเตอร์ โดยหน่วยที่ใช้จะมีค่า 0 และ 1 เท่านั้น • ไบต์(byte) :คือการนำเอาบิตหลายๆ บิตมาเรียงต่อกัน ตัวอย่างเช่น 1 ไบต์มี 8 บิต ก็คือการนำเอาเลข 0 กับ 1 มาเรียงต่อกัน 8 ตัวจนครบ 1 ไบต์ เพื่อให้ได้อักขระหนึ่งตัว เช่น 01000001 คือ เลขฐานสองที่มี8บิตเป็นรหัสแทนตัว A
โครงสร้างแฟ้มข้อมูล • ฟิลด์(field) : คือการนำเอาอักขระตั้งแต่หนึ่งตัวขึ้นไปมารวมกันเพื่อให้เกิดความหมาย เช่น ฟิลด์ std_name ใช้เก็บข้อมูลนักศึกษา ,ฟิลด์ salary ใช้เก็บข้อมูลเงินเดือน เป็นต้น • เรคอร์ด(record) : คือกลุ่มของฟิลด์ที่สัมพันธ์กัน เช่น ในหนึ่งเรคคอร์ดประกอบด้วยฟิลด์ต่างๆ ที่เกี่ยวข้องเป็นชุด เช่น เรคคอร์ดประวัตินักศึกษา ประกอบด้วย - ฟิลด์ รหัสนักศึกษา - ชื่อ-สกุล - ที่อยู่ , จังหวัด ,เบอร์โทรศัพท์
โครงสร้างแฟ้มข้อมูล • ไฟล์(file) : คือกลุ่มของเรคคอร์ดที่สัมพันธ์กันเช่น แฟ้มประวัตินักศึกษา จะประกอบด้วยเรคคอร์ดของนักศึกษาทั้งหมดในมหาวิทยาลัย ดังนั้นหนึ่งไฟล์จะต้องมีอย่างน้อยหนึ่งเรคคอร์ด เพื่อใช้การใช้งานข้อมูล เป็นต้น
bit หน่วยที่เล็กที่สุดในการเก็บข้อมูลด้วยคอมพิวเตอร์ byte กลุ่มของ bit ซึ่ง 8 bits = 1 byte หน่วยเก็บข้อมูลที่กำหนดขึ้นเพื่อใช้เก็บค่าที่ต้องการ field record กลุ่มของ fields ที่เกี่ยวข้องกัน file กลุ่มของ records แฟ้มข้อมูล หน่วยในการเก็บข้อมูลในคอมพิวเตอร์
record1 record2 record n fields แฟ้มข้อมูล File แฟ้มประวัตินักเรียน ..... ประวัติ น.ร. คนที่ 1 ประวัติ น.ร. คนที่ 2 ประวัติ น.ร. คนที่ n รหัสนักเรียน รหัสนักเรียน รหัสนักเรียน ชื่อ-สกุล ชื่อ-สกุล ชื่อ-สกุล วันเกิด วันเกิด วันเกิด ที่อยู่ ที่อยู่ ที่อยู่
โครงสร้างแฟ้มข้อมูล Filed File Record
ชนิดของข้อมูล (Type of Data) • 1. ข้อมูลชนิดข้อความ (Text): เป็นข้อมูลที่ประกอบด้วยสายอักขระต่างๆ ที่นำมารวมกันโดยไม่มีรูปแบบที่ชัดเจนแน่นอน โดยข้อมูลชนิดนี้จะมีความหมายในตัวเอง • 2. ข้อมูลชนิดที่เป็นรูปแบบ (Formatted Data): เป็นข้อมูลที่ประกอบด้วยอักขระต่างๆ ซึ่งมีรูปแบบแน่นอน โดยอาจจัดเก็บอยู่ในรูปแบบของรหัส โดยต้องนำรหัสมาตีความอีกครั้ง เช่น รหัสสาขาวิชา CS คือ โปรแกรมของสาขาวิทยาการคอมพิวเตอร์ เป็นต้น
ชนิดของข้อมูล (Type of Data) • 3. ข้อมูลชนิดรูปภาพ (Images) • 4. ข้อมูลชนิดเสียง (Audio/Sound)
ประเภทของแฟ้มข้อมูล 1. แฟ้มข้อมูลชั่วคราว (Transaction File) • ไฟล์ที่ใช้ในการเก็บค่าที่มีการเปลี่ยนแปลงบ่อย ๆ ซึ่งไม่ใช้ผลลัพธ์สุดท้าย • เป็นไฟล์ชั่วคราวและมักจะไม่เก็บข้อมูลหรือผลลัพธ์ที่ได้จากการประมวลผลไว้อย่างถาวร • เช่น แฟ้มข้อมูลการลงทะเบียนของนักศึกษา ที่ต้องมีการลงทะเบียนทุกภาคการศึกษา หรือ แฟ้มข้อมูลรายการถอนเงินในบัญชีของลูกค้า
ประเภทของแฟ้มข้อมูล 2. แฟ้มข้อมูลหลัก (Master File) • เป็นไฟล์หลักที่ใช้เก็บข้อมูลที่มีการเปลี่ยนแปลงน้อย และจะเก็บข้อมูลไว้อย่างถาวร • มักเก็บผลลัพธ์สุดท้ายของแต่ละช่วงเวลา • มีการปรับปรุงข้อมูลโดยใช้ข้อมูลจาก Transaction File • เช่น แฟ้มข้อมูลประวัตินักศึกษา ชื่อ ที่อยู่ เป็นต้น
ข้อเสียของการจัดการข้อมูลแบบแฟ้มข้อมูลข้อเสียของการจัดการข้อมูลแบบแฟ้มข้อมูล 1. ข้อมูลมีการเก็บแยกจากกัน (Data Isolation) 2. เกิดความซ้ำซ้อนของข้อมูล (Data Redundacy) 3. ข้อมูลมีความขึ้นต่อกัน (Data dependence) 4. ความไม่สอดคล้องกันของข้อมูล (Data Inconsistency) 5. รายงานต่างๆ ถูกกำหนดไว้อย่างจำกัด
1. ข้อมูลมีการเก็บแยกจากกัน (separation and isolation of data) แฟ้มพนักงาน (Employees) แฟ้มพนักงานขาย (Salesman)
2. ข้อมูลมีความซ้ำซ้อน (duplication of data/redundancy) • สืบเนื่องมาจากการเก็บข้อมูลแยกจากกัน ทำให้ไม่สามารถควบคุมข้อมูลไม่ให้เกิดความซ้ำซ้อนได้ ที่สำคัญคือการทำให้เสียพื้นที่ในการจัดเก็บข้อมูลเพิ่มขึ้น จากตัวอย่างข้างต้น คือ พนักงานชื่อ นายสมชาย และนายดิเรก ถูกเก็บลงแฟ้มข้อมูล 2 แฟ้ม ทั้งที่ควรเป็นข้อมูลชุดเดียวกัน ดังนั้นจึงทำให้เกิดความผิดพลาดของข้อมูล 3 ลักษณะด้วยกัน คือ
2.1 ข้อผิดพลาดจากการเพิ่มข้อมูล (Insertion anomalies) แฟ้มพนักงาน (Employees) Insertion แฟ้มพนักงานขาย (Salesman)
2.2 ข้อผิดพลาดจากการลบข้อมูล (Deletion anomalies) แฟ้มพนักงาน (Employees) Deletion จากแฟ้มพนักงานไปแล้ว แฟ้มพนักงานขาย (Salesman)
2.3 ข้อผิดพลาดจากการเปลี่ยนแปลงข้อมูล (Modification anomalies) แฟ้มพนักงาน (Employees) Modification เปลี่ยนชื่อ แฟ้มพนักงานขาย (Salesman)
ตัวอย่างการจัดการข้อมูลแบบแฟ้มข้อมูลตัวอย่างการจัดการข้อมูลแบบแฟ้มข้อมูล ฝ่ายทะเบียนวัดผล ฝ่ายงานบัญชี แฟ้มนักเรียน แฟ้มการลงทะเบียน แฟ้มรายวิชา แฟ้มผลการเรียน แฟ้มนักเรียน แฟ้มการเงิน ความซ้ำซ้อน & ความไม่สอดคล้องของข้อมูล หมวดวิชาคณิตศาสตร์ หมวดวิชาคอมพิวเตอร์ แฟ้มนักเรียน แฟ้มผลการเรียน แฟ้มนักเรียน แฟ้มผลการเรียน
3.ข้อมูลมีความขึ้นต่อกัน(Data dependence) ปัญหาดังกล่าวจะเกิดขึ้นเมื่อมีการปรับเปลี่ยนโครงสร้างของแฟ้มข้อมูล จะส่งผลกระทบกับข้อมูลที่ทำการจัดเก็บอยู่ และส่งผลทำให้ข้อมูลในหน่วยงานอื่น ๆที่จัดเก็บไม่ตรงกัน และวิธีการปรับปรุงค่อนข้างจะยุ่งยากมาก Master File (Old Structure) NewMaster File Update File New File (New Structure)
5. ความไม่สอดคล้องกันของข้อมูล (Data Inconsistency) ความไม่สอดคล้องของข้อมูล คือ การที่ข้อมูลเดียวกันถูกจัดเก็บไว้ในหลายๆแห่ง มีค่าไม่ตรงกัน ซึ่งอาจเกิดจากความผิดพลาดของการป้อนข้อมูล มีรูปแบบไม่ตรงกัน เช่น การป้อนข้อมูลหมายเลขโทรศัพท์ ควรจะเป็น 0-5541-1096 แต่กลายเป็น 055-411096 เป็นต้น
6. รายงานต่าง ๆถูกกำหนดไว้อย่างจำกัด(fixed queries/proliferation of application programs) ระบบแฟ้มข้อมูลของแต่ละหน่วยงานถูกเขียนขึ้นด้วยหลาย ๆโปรแกรม และการใช้งานในแต่ละหน่วยงานก็แตกต่างกัน ดังนั้นในส่วนของการจ้างโปรแกรมเมอร์มาทำการพัฒนาโปรแกรมนั้นก็จะมีส่วนที่กำหนดในเรื่องของรายงานที่หน่วยงานต้องการใช้ แต่หากว่าต้องการรายงานอื่น ๆเพิ่มในอนาคตก็ต้องทำการว่าจ้างโปรแกรมเมอร์มาพัฒนาทำให้เสียค่าใช้จ่ายเพิ่ม ดังนั้นจะเห็นว่าเกิดปัญหาในเรื่องของความต้องการของผู้ใช้งาน
ข้อดีของวิธีแฟ้มข้อมูล (Advantages of File-Based approach) • ง่ายต่อการออกแบบและการพัฒนา (easy to design and implement) • การประมวลผลแบบแฟ้มข้อมูลเป็นวิธีดังเดิมที่ใช้กันมานาน และมีความรวดเร็ว (historically and processing speed)
การจัดการข้อมูลแบบแฟ้มข้อมูลการจัดการข้อมูลแบบแฟ้มข้อมูล เป็นการจัดเก็บข้อมูลในลักษณะแฟ้มข้อมูลที่อิสระจากกัน แฟ้มข้อมูลอาจารย์ ระบบเงินเดือน รายงาน แฟ้มข้อมูลวิชาที่เปิดสอน ระบบตารางสอน รายงาน แฟ้มข้อมูลเกรด ระบบเกรด รายงาน
ระบบแฟ้มข้อมูล (File System) • ข้อมูลรายวิชา • ข้อมูลนักเรียน • ข้อมูลการลงทะเบียน โปรแกรมการลงทะเบียน • ข้อมูลรายวิชา • ข้อมูลนักเรียน • ข้อมูลผลการเรียน โปรแกรมประมวลผลการเรียนแต่ละเทอม • ข้อมูลรายวิชา • ข้อมูลการลงทะเบียน โปรแกรมจัดการรายวิชา
แก้ไขข้อเสียโดยใช้ … ระบบฐานข้อมูล ระบบเงินเดือน รายงาน ระบบจัดการฐานข้อมูล(DBMS) ข้อมูลอาจารย์ ระบบตารางสอน รายงาน ข้อมูลตารางสอน ข้อมูลเกรด ระบบเกรด รายงาน
ระบบฐานข้อมูล (Database System) โปรแกรมการลงทะเบียน DBMS • ฐานข้อมูล • ข้อมูลรายวิชา • ข้อมูลนักเรียน • ข้อมูลการลงทะเบียน • ข้อมูลผลการเรียน • ฯลฯ โปรแกรมประมวลผลการเรียนแต่ละเทอม โปรแกรมจัดการรายวิชา
ความหมายของระบบฐานข้อมูลความหมายของระบบฐานข้อมูล ฐานข้อมูล (Database): ประกอบด้วยรายละเอียดข้อมูลที่มีความเกี่ยวข้องกัน ซึ่งจะถูกนำมาใช้งานในด้านต่างๆ โดยข้อมูลเหล่านี้จะถูกจัดเก็บไว้ให้เป็นศูนย์กลางอย่างมีระบบ ซึ่งสามารถเรียกใช้งานร่วมกันได้ เพื่อประโยชน์ในการจัดการและการเรียกใช้ข้อมูลได้อย่างมีประสิทธิภาพ
ลักษณะของข้อมูลในระบบฐานข้อมูลลักษณะของข้อมูลในระบบฐานข้อมูล แสดงข้อมูลทั้งหมดที่ประกอบอยู่ในฐานข้อมูล ส่วนที่แรเงาคือส่วนของข้อมูลที่ซ้ำซ้อน ซึ่งสามารถเก็บแยกแฟ้มได้ โดยให้มีส่วนชี้แสดงความสัมพันธ์ถึงกัน นักเรียน วิชา อาจารย์ ห้องเรียน ห้องเรียน นักเรียน อาจารย์ วิชา
โครงสร้างข้อมูลในระบบฐานข้อมูลโครงสร้างข้อมูลในระบบฐานข้อมูล อาจารย์ นักเรียน รายวิชา
องค์ประกอบของระบบฐานข้อมูลองค์ประกอบของระบบฐานข้อมูล 1. ฮาร์ดแวร์ (Hardware) 2. ซอฟต์แวร์ (Software) หรือ โปรแกรม (Program) 3. ข้อมูล (Data) 4. บุคลากร (People) 5. ขั้นตอนการปฏิบัติงาน (Procedure)
องค์ประกอบของระบบฐานข้อมูลองค์ประกอบของระบบฐานข้อมูล ผู้ใช้ (User) ข้อมูล (Data) Database System ซอฟต์แวร์ (Software) ฮาร์ดแวร์ (Hardware)
องค์ประกอบที่ 1 : ฮาร์ดแวร์ (Hardware) หมายถึง ฮาร์ดแวร์ หรืออุปกรณ์ต่างที่ใช้เพื่อช่วยให้ระบบฐานข้อมูลสามารถทำงานได้อย่างมีประสิทธิภาพ โดยมีสิ่งสำคัญคือ - ขนาดของหน่วยความจำ (Memory) - ความเร็วในการประมวลผลของ CPU - หน่วยความจำสำรอง - อุปกรณ์นำเข้า (Input Device) - อุปกรณ์แสดงผล (Output Device)
องค์ประกอบที่ 2 : ซอฟต์แวร์ (Software) หมายถึงซอฟต์แวร์ ที่ใช้เพื่อเก็บข้อมูล หรือการจัดการข้อมูลในรูปแบบต่างๆ โดยแต่ละระบบจะใช้ โปรแกรมที่แตกต่างกันไปตามลักษณะการใช้งาน แต่ทุกระบบจะต้องมีโปรแกรมที่ทำหน้าที่ควบคุมดูแลการสร้าง, การเรียกใช้ข้อมูล, การจัดทำรายงาน, การปรับเปลี่ยนแก้ไขโครงสร้าง ฯลฯ ที่เรียกว่า “ระบบจัดการฐานข้อมูล” (Database Management System : DBMS)
ระบบจัดการฐานข้อมูล (DBMS) หมายถึง โปรแกรมที่ทำหน้าที่จัดการข้อมูลในฐานข้อมูล ทั้งการสร้าง, การเรียกใช้งาน, การเปลี่ยนแปลงโครงสร้าง และยังความคุมระบบรักษาความปลอกภัยของฐานข้อมูลอีกด้วย โดยระบบจัดการฐานข้อมูลจะเป็นสื่อกลางระหว่างผู้ใช้งานโปรแกรมประยุกต์ต่างๆ กับระบบฐานข้อมูลที่ติดต่ออยู่ ระบบจัดการฐานข้อมูล(DBMS) ฐานข้อมูล โปรแกรมประยุกต์ต่างๆ ที่ผู้ใช้งานใช้
หน้าที่ของระบบจัดการฐานข้อมูล (DBMS) 1. ช่วยกำหนดและเก็บโครงสร้างฐานข้อมูล (Define and Store Database Structure) ฐานข้อมูล
หน้าที่ของระบบจัดการฐานข้อมูล (DBMS) 2. การบรรจุข้อมูลลงฐานข้อมูล (Load Database) ฐานข้อมูล
หน้าที่ของระบบจัดการฐานข้อมูล (DBMS) 3. เก็บและดูแลข้อมูล (Store and Maintain Data) DBMSStore and Maintain Data ABCD 12345
หน้าที่ของระบบจัดการฐานข้อมูล (DBMS) 4. ประสานงานกับระบบปฏิบัติการ (Operating System) DBMS OperatingSystem ApplicationSoftware ฐานข้อมูล
หน้าที่ของระบบจัดการฐานข้อมูล (DBMS) 5. ช่วยควบคุมความปลอดภัย (Security Control) X ฐานข้อมูล Non-Authorize USER / DBMS Authorize USER
หน้าที่ของระบบจัดการฐานข้อมูล (DBMS) 6. การจัดทำข้อมูลสำรองและการกู้ (Backup and Recovery) Backup ABCD 12345 ABCD 12345 ABCD 12345 ABCD 12345 Recovery Backup Database Database
หน้าที่ของระบบจัดการฐานข้อมูล (DBMS) 7. ควบคุมการใช้งานพร้อมกันของผู้ใช้ในระบบ (Concurrency Control) USER 1 ฐานข้อมูล U1 : U3 : U2 USER 2 DBMS USER 3
หน้าที่ของระบบจัดการฐานข้อมูล (DBMS) 8. ควบคุมความบูรณภาพของข้อมูล (Integrity Control) IntegrityControl ID=1 Name=Somchai ID=01, Name=Somchai ID=02, Name=Somsri ฐานข้อมูลการจ่ายเงินเดือน ฐานข้อมูลประวัติ
หน้าที่ของระบบจัดการฐานข้อมูล (DBMS) 9. ทำหน้าที่จัดทำพจนานุกรมข้อมูล (Data Dictionary) DB พจนานุกรม เพื่อเก็บรายละเอียดที่เกี่ยวข้องกับฐานข้อมูล ชื่อตาราง ชื่อฟิลด์ คีย์ต่าง Database
องค์ประกอบที่ 3 : ข้อมูล (Data) หมายถึง ข้อมูลหรือสิ่งต่างๆ ที่ต้องการนำมาจัดเก็บลงในฐานข้อมูล เพื่อให้มีการจัดการอย่างเป็นระบบ โดยข้อมูลต่างๆ จะถูกจัดการในแต่ละระดับ โดยผู้ที่ใช้ฐานข้อมูลจะมองภาพข้อมูลที่แตกต่างกันออกไป และต้องสามารถถูกใช้ร่วมกัน (Data Sharing) จากผู้ใช้หลายๆคนได้ ABCD USER 1 ABCD 12345 ABCD 12345 12345 USER 2 ข้อมูล
องค์ประกอบที่ 4 : บุคลากร (People) 1. ผู้ใช้ทั่วไป (User) บุคลากรที่ใช้ฐานข้อมูล เช่น พนักงานจองตั๋ว 2. พนักงานปฏิบัติการ (Operator) ผู้ปฏิบัติการด้านประมวลผลการป้อนข้อมูล 3. นักวิเคราะห์และออกแบบระบบ (System Analyst) ผู้วิเคราะห์ระบบฐานข้อมูล และออกแบบระบบงาน ที่จะนำมาใช้