ระบบการจัดการฐานข้อมูล

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
HO Session 13: Database System Concept & Tools
Advertisements

Management Information System Week 6
Chapter3 : Data Model Class on 23 and 24 Nov 10
ซอฟแวร์ SOFTWARE น า ง ส า ว ฐ ิ ติ ม า น า ม ว ง ศ์ เ ล ข ที่ 4 3 ชั้ น ม. 4 / 7.
BY KIADTIPONG YORD. CHANDRA 2004 :: COMPUTER NETWORK ระบบเครือข่ายคอมพิวเตอร์ และการกระจาย Computer Network and Distributed LAN Software เกียรติพงษ์ ยอดเยี่ยมแกร.
ระบบสารสนเทศทางธุรกิจ (Business Information Systems)
แบบจำลองฐานข้อมูล คือ เครื่องมือในเชิงแนวคิดที่ใช้ในการอธิบาย ข้อมูล
ความรู้เบื้องต้นเกี่ยวกับระบบฐานข้อมูล
จัดทำโดย น. ส. ดวงกมล งามอยู่เจริญ เลขที่ 8 น. ส. ณัชชา เชื้อตา เลขที่ 6 เตรียมบริหารธุรกิจปี 1.
System Database Semester 1, 2009 Worrakit Sanpote 1.
การใช้งานระบบ MIS ความสำคัญและผลกระทบของระบบสารสนเทศที่มีต่อธุรกิจ
Entity-Relationship Model E-R Model
ซอฟต์แวร์ระบบที่รู้จักกันดี คือซอฟต์แวร์ควบคุมการปฏิบัติการ ของคอมพิวเตอร์ที่เรียกว่า ระบบปฏิบัติการ ระบบปฏิบัติการเป็นชุดคำสั่งที่ใช้ควบคุมระบบฮาร์ดแวร์และ.
วิชา. การใช้โปรแกรมสำเร็จรูปในชีวิตประจำวัน บทที่ 2
1. Select query ใช้สำหรับดึงข้อมูลที่ต้องการ
Database & DBMS Architecture วรวิทย์ พูลสวัสดิ์. 2 2 ฐานข้อมูล (Database) - Data and its relation - Databases are designed to offer an organized mechanism.
การพัฒนาผลสัมฤทธิ์ทางการเรียน วิชา อุตสาหกรรมการท่องเที่ยว
ซอฟต์แวร์และการเลือกใช้
LOGO แนวคิดเกี่ยวกับระบบ สารสนเทศ นางสาวกนกรัตน์ นพ โสภณ SMET
การจัดเก็บข้อมูลในแฟ้มข้อมูลธรรมดา นั้น อาจจำเป็นที่ใช้แต่ละคน จะต้องมีแฟ้มข้อมูลของตนไว้เป็นส่วนตัว จึง อาจเป็นเหตุให้มีการเก็บข้อมูล ชนิดเดียวกันไว้หลาย.
การพัฒนาบทเรียนคอมพิวเตอร์ช่วยสอน เรื่อง หลักการทำงานของคอมพิวเตอร์ วิชาคอมพิวเตอร์พื้นฐาน สำหรับนักเรียนชั้นมัธยมศึกษาปีที่ 1 โรงเรียนเฉลิมราชประชาอุทิศ.
บทที่ 3 นักวิเคราะห์ระบบและการ วิเคราะห์ระบบ. 1. นักวิเคราะห์ระบบ (System Analysis) 1.1 ความหมายของนักวิเคราะห์ระบบ นักวิเคราะห์ระบบ (System Analysis:
วิชาเทคโนโลยีสารสนเทศเพื่อชีวิต
เรื่อง กระบวนการเทคโนโลยีสารสนเทศ
ฐานข้อมูล.
Material requirements planning (MRP) systems
หน่วยที่ 1 ข้อมูลทางการตลาด. สาระการเรียนรู้ 1. ความหมายของข้อมูลทางการตลาด 2. ความสำคัญของข้อมูลทางการตลาด 3. ประโยชน์ของข้อมูลทางการตลาด 4. ข้อจำกัดในการหาข้อมูลทาง.
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
สถาปัตยกรรมของระบบฐานข้อมูล
บทสรุป ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
อาจารย์อภิพงศ์ ปิงยศ บทที่ 2 : แบบจำลองเครือข่าย (Network Models) part1 สธ313 การสื่อสารข้อมูลและเครือข่ายคอมพิวเตอร์ทางธุรกิจ อาจารย์อภิพงศ์
ฐานข้อมูลและ ระบบจัดการฐานข้อมูล
บทที่ 1 สถาปัตยกรรมของระบบฐานข้อมูล (Database Architecture)
บทที่ 3 การวิเคราะห์ Analysis.
การจัดการระบบฐานข้อมูล ภาษาที่ใช้ในระบบจัดการฐานข้อมูล
บทที่ 7 การวิเคราะห์และพัฒนาระบบ
การจัดหาพัสดุในส่วนของรายจ่ายลงทุนในภาพรวม ประจำเดือนมิถุนายน 2561
โครงสร้างภาษา C Arduino
บทที่ 5 ระบบจัดการฐานข้อมูล
การวิเคราะห์งาน และ การออกแบบงาน
Presentation การจัดการข้อร้องเรียนในธุรกิจบริการ Customer Complaint Management for Service.
ภาษามาตรฐานสำหรับนิยามข้อมูล และการใช้ข้อมูล
บทที่ 8 การควบคุมโครงการ
บทที่ 3 แฟ้มข้อมูลและฐานข้อมูล
Information System MIS.
บทที่ 4 ความรู้เกี่ยวกับระบบฐานข้อมูล
บทที่ 8 การควบคุมระบบสารสนเทศทางการบัญชี : การควบคุมเฉพาะระบบงาน
การจัดการข้อมูล ดร. นพ. วรสิทธิ์ ศรศรีวิชัย
Chapter 3 Executive Information Systems : EIS
ระบบการจัดการคลินิกครบวงจร
บทที่ 7 การวิเคราะห์และพัฒนาระบบ
บทที่ 3 ซอฟต์แวร์ประยุกต์
ความรู้เบื้องต้นเกี่ยวกับฐานข้อมูล
บทที่ 2 การประมวลผลข้อมูล
การบริหารโครงการซอฟต์แวร์
การสร้างโมเดลจำลองความสัมพันธ์ ระหว่างข้อมูล E-R Model
หน่วยที่ 3 การประมวลผลข้อมูลให้เป็นสารสนเทศ
บทสรุป ระดับของข้อมูล มีการจัดแบ่งระดับของข้อมูลเป็น 3 ระดับ
SMS News Distribute Service
การแก้ไขข้อมูล ความสัมพันธ์ระหว่างตาราง
สาขาวิชาคอมพิวเตอร์ธุรกิจ โดย อาจารย์กิตติพงษ์ ภู่พัฒน์วิบูลย์
Multimedia และระบบความจริงเสมือน Virtual Reality, VR
บทที่ 9 การเรียงลำดับข้อมูล (Sorting)
สถาปัตยกรรมของฐานข้อมูล
หน่วยการเรียนรู้ที่ 2 การกำหนดประเด็นปัญหา
ฐานข้อมูลเชิงสัมพันธ์
Database Design & Development
MTRD 427 Radiation rotection - RSO
กระดาษทำการ (หลักการและภาคปฏิบัติ)
[ บทที่ 2 ] กรอกแนวคิดและทฤษฎีเกี่ยวกับฐานข้อมูล
ใบสำเนางานนำเสนอ:

ระบบการจัดการฐานข้อมูล

ระบบจัดการฐานข้อมูลคืออะไร ระบบจัดการฐานข้อมูล (Database Management System : DBMS) หมายถึง ซอฟต์แวร์ระบบที่ใช้ในการจัดการฐานข้อมูล โดยมีวัตถุประสงค์หลักคือ การสร้างสภาวะแวดล้อมที่สะดวกและมีประสิทธิภาพในการเข้าถึง และจัดเก็บข้อมูลของฐานข้อมูล

ระบบจัดการฐานข้อมูลคืออะไร (ต่อ) ระบบจัดการฐานข้อมูลจะมีหน้าที่ในการแปล ความต้องการของผู้ใช้ให้อยู่ในรูปแบบที่สามารถทำงานกับฐานข้อมูลตามวัตถุประสงค์ของผู้ ใช้ได้

สถาปัตยกรรมฐานข้อมูล แบบออกเป็น 3 ระดับ คือ ระดับภายใน (Internal level) ระดับเชิงแนวคิด (Conceptual level) ระดับภายนอก (External level)

ภาษาที่ใช้ในสภาวะแวดล้อมต่าง ๆ ในฐานข้อมูล

คำศัพท์ที่เกี่ยวข้อง สกีมาฐานข้อมูล (Database schema) สับสกีมา (Sub-schema) ความเป็นอิสระของข้อมูล (Data independence) ความเป็นอิสระของข้อมูลทางกายภาพ (physical data independence) ความเป็นอิสระของข้อมูลทางตรรกะ (logical data independence)

ชนิดของระบบฐานข้อมูล จำนวนของผู้ใช้ ผู้ใช้คนเดียว (Single-user) ผู้ใช้หลายคน (Multi-user) สถานที่ตั้งของฐานข้อมูล ฐานข้อมูลแบบรวมศูนย์ ฐานข้อมูลแบบกระจาย ชนิดของการใช้งานของระบบฐานข้อมูล

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

หน้าที่ของระบบจัดการฐานข้อมูล (DBMS) ภาษาที่ใช้ในการเข้าถึงฐานข้อมูลและ การเชื่อมต่อกับโปรแกรมประยุกต์ ภาษาที่ใช้ในการนิยามข้อมูล (Data Definition Language-DDL) ภาษาที่ใช้ในการจัดการข้อมูล (Data Manipulation Language-DML) ภาษาที่ใช้ในการควบคุมสิทธิการเข้าใช้ (Data Control Language-DCL) การติดต่อสื่อสารกับฐานข้อมูล

การทำงานของระบบจัดการฐานข้อมูล หน่วยประมวลผลคิวรี (Query processor) ตัวแปลภาษา DML (DML Compiler) ตัวแปลภาษา DDL ตัวประมวลผลคิวรี ผู้จัดการหน่วยเก็บข้อมูล (Storage manager) ผู้จัดการสิทธิและบูรณภาพ ผู้จัดการทรานแซคชัน ผู้จัดการแฟ้มข้อมูล ผู้จัดการบัฟเฟอร์

โครงสร้างการทำงานโดยรวมของระบบจัดการฐานข้อมูล

บุคลากรที่เกี่ยวข้องกับระบบฐานข้อมูล นักเขียนโปรแกรมประยุกต์ ผู้ใช้เพื่อการวิเคราะห์ต่างๆ ผู้ใช้ทั่วไป ผู้บริหารฐานข้อมูล กำหนดนิยามของสกีมา กำหนดสิทธิ์ในการเข้าใช้ระบบฐานข้อมูล กำหนดข้อบังคับในการบูรณภาพข้อมูล

ข้อดีในการใช้ระบบฐานข้อมูล ทำให้ข้อมูลสามารถใช้ร่วมกันได้ สามารถควบคุมเรื่องความปลอดภัยของข้อมูลได้ดี การพัฒนาและบำรุงรักษา สามารถกำหนดให้เป็นมาตรฐาน ได้ ลดความซ้ำซ้อนของข้อมูล

ข้อดีในการใช้ระบบฐานข้อมูล (ต่อ) สามารถหลีกเลี่ยงความไม่สอดคล้องกันของข้อมูล สามารถรักษาความถูกต้องของข้อมูลในระบบ มีความเป็นอิสระของข้อมูล มีทฤษฏีที่สนับสนุนการทำงานที่ชัดเจน

ข้อเสีย ระบบมีความซับซ้อน มีค่าใช้จ่ายสูง ต้องใช้ซอฟต์แวร์และฮาร์ดแวร์เพิ่มเติม หากระบบเกิดความล้มเหลว จะทำให้เกิดผลกระทบอย่างมาก การกู้คืนทำได้ยาก

                                                                                                                                                                                                              

                                                                                                                                                                                                              

                                                                                                                                                                                                              

                                                                                                                                                                                                               Primary key – unique identifier คีย์ที่ใช้กำหนดความแตกต่างของ recored (tuple) ตัวมันเองมีคุณสมบัติไม่ซ้ำ สื่อความหมายและกำหนดค่าแอททริบิวอื่นใน relation ได้

                                                                                                                                                                                                               Foreign key – คีย์ที่ใช้อ้างอิงความสัมพันธ์ระหว่าง Table ตัวมันเองไปเป็น primary keyใน Table อื่น

ฐานข้อมูล กับ ตู้เอกสาร Database and Database System Database Concepts ฐานข้อมูล กับ ตู้เอกสาร Database and Database System Without Database … Why Database ? ระบบจัดการฐานข้อมูล ฟังก์ชันของระบบฐานข้อมูล

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

Sales data Sales analysis Customer data Product data Database ... A collection of data organized to serve many applications efficiently by centralizing the data and minimizing redundant data Sales data Sales analysis Database Customer data Customer analysis Product data Product Line analysis Data from different sources Applications

Database System ... A computerized record keeping system Database system must represent the real world GIGO : Garbage In, Garbage Out

Data Redundancy Without Database … ฝ่ายขาย ฝ่ายบุคคล ฝ่ายบัญชี รายชื่อพนักงาน แผนก, ตำแหน่ง ยอดขาย ฯลฯ ฝ่ายขาย รายชื่อพนักงาน แผนก, ตำแหน่ง อัตราเงินเดือน การศึกษา, การฝึกอบรม วันเริ่มทำงาน ฯลฯ ฝ่ายบุคคล ฝ่ายบัญชี รายชื่อพนักงาน แผนก, ตำแหน่ง อัตราเงินเดือน ยอดขาย คอมมิชชั่น ฯลฯ ผู้บริหาร รายชื่อพนักงาน แผนก, ตำแหน่ง วันเริ่มทำงาน ยอดขาย ฯลฯ รายชื่อพนักงาน แผนก, ตำแหน่ง การศึกษา, การฝึกอบรม ฯลฯ ฝ่ายฝึกอบรม

Data Inconsistency Without Database … ฝ่ายขาย ฝ่ายบุคคล ฝ่ายบัญชี สมชาย กล้าหาญ พนักงานขาย ยอดขาย 15000 บาท ฯลฯ ฝ่ายขาย รหัส 105 สมชาย กล้าหาญ พนักงานขาย เงินเดือน 8000 บาท ฯลฯ ฝ่ายบุคคล ฝ่ายบัญชี สมชาย กล้าหาญ พนักงานขาย เงินเดือน 8500 บาท ยอดขาย 12000 บาท คอมฯ 1200 บาท ฯลฯ ผู้บริหาร สมชาย กล้าหาญ พนักงานขาย ยอดขาย 8000 บาท ฯลฯ สมชาย กล้าหาญ พนักงานส่งของ ฯลฯ ฝ่ายฝึกอบรม

Lack of Integrity Without Database … ฝ่ายขาย ฝ่ายบุคคล ผู้บริหาร รหัส 105 สมชาย กล้าแก้ว พนักงานขาย ฯลฯ ฝ่ายขาย รหัส 105 สมชาย กล้าหาญ พนักงานขาย ฯลฯ ฝ่ายบุคคล ผู้บริหาร รหัส 105 สมพงษ์ กล้าหาญ พนักงานขาย ฯลฯ ฝ่ายบัญชี รหัส 105 ** ขออภัย รหัสไม่ถูกต้อง รหัส 105 สมชาย หาญกล้า พนักงานขาย ฯลฯ ฝ่ายฝึกอบรม

Why Database? ... Data can be shared Redundancy can be reduced Inconsistency can be avoided Integrity can be maintained Security restrictions can be applied Database

สาเหตุที่ต้องมีฐานข้อมูล ในระบบงานที่ไม่เป็น Database System แฟ้มข้อมูลจะถูกออกแบบมาเพื่อใช้เฉพาะงานเท่านั้น และถูกจัดเก็บแยกบน Tape หรือ Disk และพบบ่อยครั้งที่แฟ้มข้อมูลต่างๆของงาน มีข้อมูลที่เหมือนกัน ซึ่งข้อมูลที่ซ้ำซ้อนนี้ (Redundancy data) ก่อให้เกิดปัญหา เพราะว่าเป็นการยากในการที่จะรักษาความถูกต้องและสอดคล้องกันของข้อมูล (Data Consistent) นอกจากนี้ ขณะที่มีการ Modify ของระบบงานที่มีอยู่ และหรือเพิ่มระบบงานใหญ่ขึ้น โปรแกรมเมอร์ มักจะประสบภาวะต่างๆดังนี้ มีข้อมูลซ้ำซ้อนอยู่ในแฟ้มข้อมูลต่างๆ โปรแกรมเมอร์ต้องใช้เวลามากในการแก้ไขโปรแกรมของระบบงานที่ทำอยู่ เมื่อมีการเปลี่ยนแปลง Record layout หรือ I/O device characteristic การเปลี่ยนสื่อเก็บข้อมูล หรือวิธีการ Access ข้อมูล ความรู้เกี่ยวกับลักษณะและวิธีการ Access ของ Device ต่างๆ จะเป็นตัวจำกัดความสามารถของโปรแกรมเมอร์ งาน Batch อาจจะต้องขยายให้เป็นงาน Teleprocessing

Traditional File-Based Systems A file-based system is a collection of application programs that performs services for the end-users such as the production of reports, but each program defines and manages its own data. sales sales application sales files programs contracts application contracts files programs Limitations: Separation and isolation of data Duplication of data Program-data dependence Incompatibility of files (using different languages) Fixed queries of application programs Page 7

ระบบจัดการฐานข้อมูล ... Database Management System (DBMS) Special software to create and maintain a database and enable individual business applications to access the data Data Entry DBMS Software Update Database Inquiry

ส่วนประกอบระบบการจัดการฐานข้อมูล

Summary A database is a shared collection of logically related data (and a description of this data), designed to meet the information needs of an organization A DBMS is a software system that enables users to define, create, and maintain the database and provides controlled access to this database Disadvantages of a DBMS include complexity, size, cost, additional hardware costs, cost of conversion, performance and higher impact of a failure Page 13

Components of a Database System Integrate Share Hardware Processor, main memory, secondary storage and I/O devices Individual PC to a network of computers Software DBMS Application programs Others software tools Users Application Programmers End - Users DBA’s

คำศัพท์ที่เกี่ยวกับ Data ที่เก็บใน Database Entity - ข้อมูลหลัก ข้อมูลในระบบฐานข้อมูลหนึ่งๆ จะมีข้อมูลที่เป็นตัวหลักๆ ที่นำมาใช้กัน เช่น ระบบการสอนในมหาวิทยาลัย ข้อมูลหลักเกี่ยวกับ นักศึกษา, อาจารย์, วิชาที่สอน ระบบการขาย ข้อมูลหลักเกี่ยวกับพนักงานขาย, ลูกค้า, สินค้า ฯลฯ 2. Attribute – แอททริบิว เป็นข้อมูลที่แสดงถึงคุณสมบัติของ Entity นั้น ๆ เช่น เอนทิตีรายวิชาจะประกอบด้วยแอททริบิวรหัสวิชา ชื่อวิชา และจำนวนหน่วยกิตเป็นต้น 3. Relation Ship – สัมพันธภาพ ความสัมพันธ์ต่อกันของข้อมูลหลัก ซึ่งต้องเก็บไว้ใน Database เช่น นักศึกษาเรียนกับอาจารย์คนหนึ่ง ในทางตรงกันข้าม อาจารย์คนหนึ่งสอนนักศึกษากลุ่มหนึ่ง ความสัมพันธ์ยังแบ่งเป็น

                                                                                                                                                                                                               Slide 32 of 51

Entities Entity Type Person: EMPLOYEE, STUDENT, PATIENT Place: PROVIENCE, COUNTRY Object: MACHINE, BUILDING, AUTOMOBILE Event: SALE, REGISTRATION, ORDER Concept: ACCOUNT, COURSE, INVENTORY

Attribute STUDENT: STUDENT NO, NAME, ADDRESS, PHONE NO AUTOMOBILE: VEHICLE ID, COLOR, WEIGHT, HORSEPOWER EMPLOYEE: EMPLOYEE NO, NAME, ADDRESS, SKILL

Binary relationship คือ ความสัมพันธ์ ระหว่าง 2 กลุ่มของ Entity อาจารย์ นักศึกษา 2. Unary relationship คือ ความสัมพันธ์กับกลุ่มของตัวเอง วิชา 3. Ternary relationship คือ ความสัมพันธ์ระหว่าง 3 กลุ่มของ Entity นักศึกษา วิชา อาจารย์

ความสัมพันธ์ยังแบ่งเป็น 1. One to One Employee Location 2. One to Many Employee Department 3. Many to Many Employee Project

Relationships Relationship

Degree of Relationship Unary relationship

Binary relationship

Redundancy can be reduced ลดความซ้ำซ้อนของข้อมูล เมื่อเป็นระบบ Database คือ เป็นแบบ Integrated และ Shared ประโยชน์ ของ Database System เมื่อเกิด Centralize Control Redundancy can be reduced ลดความซ้ำซ้อนของข้อมูล 2. Inconsistency can be avoided หลีกเลี่ยงความขัดแย้งของข้อมูล 3. The data can be shared ใช้ข้อมูลร่วมกันได้ 4. Standard can be enforced ควบคุมหรือกำหนดมาตรฐานได้ 5. Security restriction can be applied จัดระบบความปลอดภัยที่รัดกุมได้ 6. Integrity can be maintained ควบคุมความคงสภาพของข้อมูล 7. Conflicting requirements can be balance สร้างสมดุลในความขัดแย้งของความต้องการได้ 8. Data independentความอิสระของข้อมูล

Hardware Client/Server

Software Client/Server PC DB2 Oracle Ingres Sybase Progress Informix dBASE FoxPro Access Approach Paradox

ฟังก์ชันพื้นฐานของฐานข้อมูล …(DBMS) Data Definition การนิยามข้อมูล Create Tables and Relationships Data Manipulation การจัดการข้อมูล Add, Delete, Update Query and Report

ฟังก์ชันอื่น ๆ ของฐานข้อมูล ... Data Security การรักษาความปลอดภัย Data Integrity การรักษาความคงสภาพ ความถูกต้องของข้อมูล Data Concurrency การใช้ข้อมูลพร้อมกัน Data Recovery การฟื้นสภาพของข้อมูล Data Dictionary พจนานุกรมข้อมูล Performance การใช้งานการประมวลผลได้รวดเร็ว

Structure Query Language (SQL) Standard interactive and programming language for getting information from and updating a database

Data Definition Language (DDL)

Data Manipulation Language (DML)

องค์ประกอบของฐานข้อมูล (Database Components) DBMS =============== Design tools Table Creation Form Creation Query Creation Report Creation Procedural language compiler (4GL) ============= Run time Form processor Query processor Report Writer Language Run time User Interface Applications Application Programs Database Database contains: User’s Data Metadata Indexes Application Metadata

Data Independence and the ANSI-SPARC Three-level Architecture 14

External (PL/1) External (COBOL) DCL 1 EMPP. 01 EMPO. 2 EMP# CHAR(6) 02 EMPNO PIC X(6). 2 SAL 02 DEPTNO PIC X(4). Conceptual EMPLOYEE EMPLOYEE_NUMBER CHARACTER(6) DEPARTMENT_NUMBER CHARACTER(4) SALARY NUMERIC(5) Internal STORED_EMP LENGTH = 18 PREFIX TYPE=BYTE(6), OFFSET=0 EMP# TYPE=BYTE(6), OFFSET=6, INDEX=EMPX DEPT# TYPE=BYTE(4), OFFSET=12 PAY TYPE=FULLWORD, OFFSET=16

External Level Users’ view of the database Language External View Application programmer End-user External View Logical record Data authorized to view External Schema

Conceptual Level Community view of database Representation of entire information content Conceptual schema definition of total database content ++ data independent

Internal Level Low-level representation of entire database occurrences Describes how the data is stored in the database Not physical level Level used by utilities to increase performance.

Database Design Divided into four tasks Conceptual design DBMS software selection (if required) Logical design Physical design Conceptual design is independent of software and hardware Logical design is DBMS (software) dependent Physical design is dependent on both software and hardware

Database Models Hierarchical Network tree structure with predefined access paths child has one parent Network multiple paths to same record Hybrid - Object/Relational Databases Object-oriented data and methods highly-variable structure tightly coupled with programming language Multi-dimensional

รูปแบบของฐานข้อมูล (Database models) Relational 1970s 1960s ? Object oriented Hierarchical Client Oriented Traditional files Object-relational Network

โครงสร้างฐานข้อมูล (Database Structures) ความสัมพันธ์ระหว่างระเบียนเดี่ยวหลายๆระเบียนที่จัดเก็บอยู่ในฐานข้อมูลนั้น อยู่บนพื้นฐานโครงสร้างข้อมูลเชิงตรรกะ (Logical Data Structure) หรือแบบจำลอง (Models) โปรแกรมสำเร็จรูประบบจัดการฐานข้อมูลถูกออกแบบให้ใช้โครงสร้างข้อมูลเฉพาะเจาะจง เพื่อช่วยให้ผู้ใช้เข้าถึงสารสนเทศที่เก็บอยู่ในฐานข้อมูลได้ง่ายและเร็ว โดยโครงสร้างฐานข้อมูลพื้นฐานแบ่งออกได้เป็น 5 แบบ คือ แบบจำลองเชิงลำดับชั้น แบบเชิงเครือข่าย แบบเชิงสัมพันธ์ แบบเชิงวัตถุ และแบบเชิงหลายมิติ

1) โครงสร้างเชิงลำดับชั้น (Hierarchical Structure) เป็นความสัมพันธ์ระหว่างระเบียนจากโครงสร้างลำดับชั้นหรือแบบต้นไม้ ความสัมพันธ์ระหว่างระเบียนเป็นแบบหนึ่งต่อกลุ่ม (One-to-many) เพราะว่าแต่ละส่วนย่อยข้อมูลมีความสัมพันธ์กับส่วนย่อยเหนือขึ้นไปเท่านั้น ข้อมูลส่วนย่อยหรือระเบียนที่ระดับสูงที่สุด เรียกว่า ราก (Root) ส่วนย่อยข้อมูลใดๆเข้าถึงได้โดยการเคลื่อนลงไปข้างล่างจากรากไปตามกิ่งก้านสาขาของต้นไม้จนกระทั่งถึงตำแหน่งของระเบียนที่ต้องการ

ชนิดของฐานข้อมูล : ฐานข้อมูลแบบลำดับชั้น (Hierarchical Database) คุณอุทัย เซี่ยงเจ็น คุณยายไฮ รหัสสินค้า A1 A2 A3 A2 A3 B1 ตะปู ปูน สี ปูน สี จอบ ชื่อสินค้า ปริมาณ 250 15 150 100 50 10

2) โครงสร้างแบบเครือข่าย (Network Structure) สามารถแสดงด้วยความสัมพันธ์เชิงตรรกะที่มีความซับซ้อนมากขึ้น และยังคงใช้ในโปรแกรมสำเร็จรูป DBMS บนเมนเฟรม ซึ่งอนุญาตความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many-to-many) เป็นแบบจำลองเครือข่ายที่สามารถเข้าถึงส่วนย่อยข้อมูลทางหนึ่งในหลายๆทาง เพราะส่วนย่อยข้อมูลหรือระเบียนใดๆสามารถสัมพันธ์กับส่วนย่อยข้อมูลอื่นๆใดๆได้

ชนิดของฐานข้อมูล : ฐานข้อมูลแบบเครือข่าย (Network Database) คุณอุทัย เซี่ยงเจ็น คุณยายไฮ รหัสสินค้า A1 A2 A3 B1 ตะปู ปูน สี จอบ ชื่อสินค้า ปริมาณ 250 115 200 10

3) โครงสร้างเชิงสัมพันธ์ (Relational Structure) เป็นที่นิยมมากที่สุดในบรรดาสามโครงสร้างนี้ มีการนำมาใช้กับโปรแกรมสำเร็จรูป DBMS ไมโครคอมพิวเตอร์ มินิคอมพิวเตอร์และระบบเมนเฟรม ในแบบจำลองเชิงสัมพันธ์นั้นส่วนย่อยข้อมูลทั้งหมดภายในฐานข้อมูลถูกจัดเก็บในรูปแบบตาราง (Table)

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

การดำเนินการกับ OLAP : Dice Shop Product Type Date Product Type Shop Date

5) โครงสร้างเชิงวัตถุ (Object-Oriented Structure) แบบจำลองฐานข้อมูลเชิงวัตถุได้รับการพิจารณาว่าเป็นหนึ่งในเทคโนโลยีสำคัญของยุคใหม่ของโปรแกรมประยุกต์สื่อประสมเชิงเว็บ แสดงถึงออบเจ็กต์ประกอบด้วยข้อมูลที่อธิบายถึงคุณสมบัติของเอนทิตี รวมทั้งการทำงานที่สามารถกระทำกับข้อมูลนั้น การสามารถในการห่อหุ้ม (Encapsulation) อนุญาตให้แบบจำลองสามารถจัดการข้อมูลที่ซับซ้อน ( กราฟิก ภาพ เสียง ข้อความ) ได้ดีขึ้นมากกว่าโครงสร้างฐานข้อมูลแบบอื่น

ชนิดของฐานข้อมูล : ฐานข้อมูลเชิงวัตถุ (Object-Oriented Database) Cust_ID = 001 Cust_Name = อุทัย เซี่ยงเจ็น Customer Attribute: Cust_ID Cust_Name Methods: Print(); getName(); Cust_ID = 002 Cust_Name = มานี มีนา

DATABASE ADMINISTRATOR (DBA) เป็นบุคคลที่มีหน้าที่ควบคุม ดูแลรักษาระบบฐานข้อมูลและรับผิดชอบในการวิเคราะห์ วางระบบ ออกแบบโครงสร้างฐานข้อมูล และจัดการเกี่ยวกับ data service ซึ่งได้แก่ security & Integrity, validation, reorganization และ data dictionary หน้าที่หลักของ DBA Deciding the information content of the database 2. Deciding the storage structure and access strategy) 3. Liaising with users 4. Defining security and integrity checks 5. Defining a strategy for backup and recovery 6. Monitoring performance and responding to changing requirements

DATABASE MANAGEMENT SYSTEMS (DBMS) DBMS คือ Software ที่จัดการ access database ทั้งหมด อยู่ระหว่าง User กับ Physical database หน้าที่หลักของ DBMS คือ handle access to Database หน้าที่ของ DBMS โดยอธิบายถึงสิ่งที่เกิดขึ้น เมื่อมีการใช้ข้อมูล User ส่ง request ที่ต้องการ access โดยใช้ DSL เฉพาะอันใดอันหนึ่ง เช่น SQL ไปว่าต้องการข้อมูลชุดใด 2. DBMS รับ request นั้นมา แล้ววิเคราะห์ตีความว่าต้องการข้อมูลอะไร 3. DBMS จะตรวจว่า External schema สำหรับ user นั้นที่สร้างไว้ตรงกับที่ขอ หรือไม่ 4. DBMS execute กับ Stored database โดย operation ที่จำเป็น เช่น ดึงข้อมูลกลับไปให้ โดยส่งย้อนกลับขึ้นไป

ฟังก์ชันของ DBMS (functions of a DBMS) อย่างน้อยที่สุด ต้องประกอบด้วยสิ่งเหล่านี้ Database definition DBMS จะ support ในการกำหนดโครงสร้างของ Database - External level - Conceptual level - Internal level 2. Database creation (storing data ใน database) คือเอา data ไปบรรจุใน database DBMS จะสนับสนุนให้ user ทำการ Load data เข้าไปได้ 3. Data manipulation - Retrieval (Query และ Reporting) DBMS ต้องสามารถจัดการ request จาก user ในการ retrieve ที่เป็น ไปได้กับ data ที่มีอยู่ใน database ออก report ได้ - Update DBMS จะ support ในการ update data ที่มีอยู่ใน database ที่ เป็นไปได้

4. Programming user facilities for system development มีเครื่องมือให้ programmer เมื่อมีการพัฒนาระบบ เช่น Fourth GL หรือมี Library ต่างๆในการใช้งาน 5. Data security and integrity DBMS ต้องตรวจสอบ user request และปฎิเสธการพยายามที่จะละเมิด security check และ integrity check ที่กำหนดโดย DBA 6. Data recovery and concurrency 7. Data Dictionary Utilities Utility คือ program ที่ออกแบบมาช่วย DBA ในงานจัดการต่างๆ อาจจะอยู่ใน DBMS หรือเป็น Utility program ที่ไม่ได้มาจาก DBMS - Load routine - Unload / reload routine (Dump / restore routines) - Reorganization routines - Statistics routines - Analysis routines

Software ทั้งหมดที่เกี่ยวข้องกับ Data access มี 3 ตัว อยู่ใน 3 layers คือ 1. DBMS 2. File manager 3. Disk manager หลักการทำงานมี 3 ขั้นตอน 1. DBMS ทำหน้าที่รับ request stored record จาก user แล้วไปบอกให้ File manager จัดการให้ต่อ 2. File manager ทำหน้าที่รับคำสั่งจาก DBMS แล้วหาว่าอยู่ใน file ไหน แล้ว บอกต่อไปยัง software ตัวถัดไปคือ disk manager ว่า file ที่ต้องการนั้น อยู่ใน page ไหน 3. Disk manager ทำหน้าที่รับคำสั่งจาก File manager ว่าต้องการ page ใดเพราะฉะนั้น disk manager ก็จะเอารายละเอียดนั้นมาหา page ที่ต้องการ การหา page ที่ต้องการ คือ การทำ I/O operation Disk manager จะรู้ว่า Physical address ของสิ่งที่ต้องการอยู่ตรงไหน จากนั้น Disk manager จะส่ง page ที่ได้ให้กับ file manager แล้ว file manager ก็ส่ง record ต่อให้กับ DBMS

DBMS File manager Disk manager Stored database record returned Request stored record File manager Request stored page Stored page returned Disk manager Disk I/O operation Data read from disk Stored database The DBMS, File manager and Disk manager