ส่วนที่ 4
Download
1 / 36

??????? 4 - PowerPoint PPT Presentation


  • 127 Views
  • Uploaded on

ส่วนที่ 4. System Design. การออกแบบระบบ. Chapter 13. Physical Database Design. การออกแบบฐานข้อมูลในระดับกายภาพ. กิจกรรมในขั้นตอนนี้ได้แก่ 1. การออกแบบฐานข้อมูลใน ระดับกายภาพ 2. การออกแบบ Application. System Development Life Cycle : SDLC. 13.2. Learning Objectives.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '??????? 4' - dora-nunez


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
4

ส่วนที่ 4

System Design

การออกแบบระบบ


4

Chapter 13

Physical Database Design

การออกแบบฐานข้อมูลในระดับกายภาพ


4

กิจกรรมในขั้นตอนนี้ได้แก่กิจกรรมในขั้นตอนนี้ได้แก่

1. การออกแบบฐานข้อมูลใน

ระดับกายภาพ

2. การออกแบบ Application

System Development Life Cycle : SDLC

13.2


4

Learning Objectivesกิจกรรมในขั้นตอนนี้ได้แก่

  • เพื่อให้ผู้เรียนสามารถเข้าใจและอธิบายการออกแบบฐานข้อมูลในระดับกายภาพ (Physical Database Design)

  • เพื่อให้ผู้เรียนเข้าใจโครงสร้างทางกายภาพของฐานข้อมูล

  • เพื่อให้ผู้เรียนสามารถออกแบบฐานข้อมูลในระดับกายภาพ โดยแปลง Logical Schema ให้เป็น Table

  • เพื่อให้ผู้เรียนออกแบบและสร้างฐานข้อมูลในระดับกายภาพ โดยใช้ Microsoft Access

13.3


4

Topicsกิจกรรมในขั้นตอนนี้ได้แก่

  • ขั้นตอนการออกแบบฐานข้อมูลในระดับกายภาพ

  • โครงสร้างทางกายภาพของฐานข้อมูล

  • การออกแบบฐานข้อมูลในระดับกายภาพ โดยแปลง Logical Schema ให้เป็น Table

  • การออกแบบและสร้างฐานข้อมูลในระดับกายภาพ โดยใช้ Microsoft Access

13.4


4

การออกแบบฐานข้อมูลในระดับกายภาพการออกแบบฐานข้อมูลในระดับกายภาพ

  • การออกแบบฐานข้อมูลในระดับ Conceptual และ Logical เป็นการวางโครงสร้างของฐานข้อมูลที่ยังไม่มีการกำหนดหรือระบุรายละเอียดลงไปว่า ข้อมูลต่าง ๆ จะจัดเก็บลงในหน่วยความจำสำรองด้วยวิธีใด ใช้ซอฟต์แวร์อะไร

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

    • ด้วยการนำ Relation ที่ได้มาสร้างเป็น Table

    • และกำหนดโครงสร้างทางกายภาพให้กับ Table นั้น

    • กำหนดกฎของความถูกต้อง (Integrity Rules)

    • การกำหนดโครงสร้างแฟ้มข้อมูล (File Organization)

13.5


4

โครงสร้างทางกายภาพของฐานข้อมูลโครงสร้างทางกายภาพของฐานข้อมูล

โครงสร้างแฟ้มข้อมูล

โครงสร้างแฟ้มข้อมูลจะประกอบด้วยโครงสร้างพื้นฐานที่ลำดับจากหน่วยที่

เล็กที่สุดไปยังหน่วยที่ใหญ่ที่สุด ตามลำดับต่อไปนี้

  • บิต (Bit)

  • ไบต์ (Byte)

  • ฟิลด์ (Field)

  • เรคอร์ด (Record)

  • ไฟล์ (File)

  • ฐานข้อมูล (Database)

13.6


4

โครงสร้างทางกายภาพของฐานข้อมูลโครงสร้างทางกายภาพของฐานข้อมูล

บิต (Bit)

จะประกอบด้วยเลขฐานสอง (Binary Digit) ที่ใช้แทนค่าหน่วยที่เล็กที่สุดของข้อมูลในระบบคอมพิวเตอร์ โดยบิตจะมีอยู่เพียงหนึ่งในสองสถานะเท่านั้นคือ 0 หรือ 1

ไบต์ (Byte)

จะประกอบด้วยจำนวนบิต (Bit) หลาย ๆ บิตมาเรียงต่อกัน เนื่องจากว่าเพียงบิตเดียวจะสามารถใช้แทนรหัสได้เพียงหนึ่งในสองสถานะเท่านั้น คือ 0 กับ 1 ดังนั้นจึงจำเป็นต้องนำบิตหลาย ๆ บิตมารวมกันเป็นไบต์ เช่น 1 ไบต์ มี 8 บิต ก็คือการนำเลข 0 กับ 1 มาเรียงต่อกันจนครบ 1 ไบต์จึงทำให้สามารถสร้างรหัสแทนข้อมูลขึ้นมาเพื่อใช้สำหรับแทนตัวอักษรหรืออักขระที่แตกต่างกันได้ถึง 256 ตัวด้วยกัน

ฟิลด์ (Field)

คือการนำอักขระตั้งแต่หนึ่งตัวขึ้นไปมารวมกันเพื่อให้เกิดความหมาย เช่น ฟิลด์ Cust_Id เป็นฟิลด์ที่ใช้เก็บข้อมูลรหัสลูกค้า ,ฟิลด์ Cust_name เป็นฟิลด์ที่ใช้เก็บข้อมูลชื่อลูกค้า เป็นต้น

13.7


4

โครงสร้างทางกายภาพของฐานข้อมูลโครงสร้างทางกายภาพของฐานข้อมูล

เรคอร์ด (Record)

คือของฟิลด์ที่สัมพันธ์กัน เช่นในหนึ่งเรคอร์ดประกอบฟิลด์ต่างๆ ที่ข้องเกี่ยวกันรวมกันเป็นชุด เรคอร์ดของลูกค้า ประกอบด้วยฟิลด์ รหัสลูกค้า ชื่อ-สกุล ที่อยู่ เบอร์โทรศัพท์ เป็นต้น ดังนั้นในหนึ่งเรคอร์ดก็จะต้องมีอย่างน้อยหนึ่งฟิลด์เพื่อใช้ในการอ้างอิงข้อมูลในเรคอร์ด นั้น ๆ

ไฟล์ (File)

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

ฐานข้อมูล (Database)

เกิดจากการนำไฟล์ที่เกี่ยวข้องกันมาจัดเก็บไว้ที่เดียวกันอย่างมีระบบ เพื่อให้สามารถเรียกใช้และจัดการข้อมูลได้อย่างมีประสิทธิภาพ เช่น ไฟล์ข้อมูลพนักงาน สินค้าคลังคลัง พนักงานขาย และลูกค้า

13.8


4

โครงสร้างทางกายภาพของฐานข้อมูลโครงสร้างทางกายภาพของฐานข้อมูล

13.9


4

FILEโครงสร้างทางกายภาพของฐานข้อมูล

RECORD

RECORD

RECORD

...

RECORD

FILED

FILED

FILED

BYTE

BYTE

BIT

BIT

โครงสร้างทางกายภาพของฐานข้อมูล

13.10


4

การกำหนดชนิดข้อมูลโครงสร้างทางกายภาพของฐานข้อมูล

การเลือกชนิดของข้อมูลต้องคำนึงถึงสิ่งต่อไปนี้

  • ประหยัดเนื้อที่ในการจัดเก็บมากที่สุด

  • สามารถแทนค่าที่เป็นไปได้ทั้งหมดของ fields

  • คงคุณสมบัติความถูกต้องของข้อมูล

  • รองรับความเติบโตในอนาคตของข้อมูล

13.11


4

การกำหนดชนิดข้อมูลโครงสร้างทางกายภาพของฐานข้อมูล

13.12


4

การกำหนดชนิดข้อมูลโครงสร้างทางกายภาพของฐานข้อมูล

Create Table factory

( fac_id int not null,

fac_name varchar(25) not null,

zone varchar(10) ,

Constraint pk_fac_id primary key (fac_id));

Create table car

( car_id int not null,

car_name varchar(25) not null,

series varchar(25) not null,

color varchar(10),

price real,

car_date datetime,

fac_id int,

Constraint pk_car_id primary key (car_id),

Constraint ak_car_name unique(car_name),

Constraint ak_series unique(series),

Constraint ch_color check(color in('red','black','blue','green')),

Constraint ch_price check(price between 100000 and 500000),

Constraint ch_date check(car_date < getdate()),

Constraint fk_fac_id foreign key (fac_id) references factory);

13.13


4

การออกแบบฐานข้อมูลในระดับกายภาพโดยแปลงการออกแบบฐานข้อมูลในระดับกายภาพโดยแปลง Logical Schema เป็น Table

ขั้นตอนการออกแบบฐานข้อมูลในระดับ Physical มีดังต่อไปนี้

  • การแปลง Logical Schema ให้อยู่ในรูปแบบของ Table

  • กำหนดโครงสร้างทางกายภาพให้กับฐานข้อมูล

  • กำหนดวิธีการรักษาความปลอดภัยให้กับฐานข้อมูล

  • ตรวจสอบและปรับเปลี่ยนระบบ

13.14


4

การแปลง การออกแบบฐานข้อมูลในระดับกายภาพโดยแปลงLogical Schema ให้อยู่ในรูปแบบของ Table

สำหรับการดำเนินงานของขั้นตอนนี้จะแบ่งเป็น 2 ส่วนดังนี้

  • การออกแบบโครงสร้างทางกายภาพให้กับ Table

  • การกำหนด Integrity Rules

13.15


4

การออกแบบโครงสร้างทางกายภาพให้กับ Table

การออกแบบโครงสร้างทางกายภาพให้กับ Table ได้แก่การนำ Relation ต่าง ๆ

ที่กำหนดอยู่ใน Relational Schema ที่ได้จากการออกแบบฐานข้อมูลในระดับ

Logical มาสร้างเป็น Table ซึ่งจะต้องมีการกำหนดรายละเอียดให้กับ Table ก่อน

ดังนี้

  • ชื่อของ Table

  • รายชื่อ Attribute ต่างๆ ของแต่ละ Table

  • ประเภทของข้อมูล (Data Type) ของแต่ละ Attribute

  • ขนาดของแต่ละ Attribute

  • รายชื่อของ Attribute ที่ทำหน้าที่เป็น Primary Key ,Foreign Key หรือ Alternate Key

  • Integrity Rule ที่ใช้ควบคุม Primary Key และ Foreign Key

13.16


4

การออกแบบโครงสร้างทางกายภาพให้กับ Table

จากโครงสร้างต่อไปนี้สามารถนำมากำหนดโครงสร้างทางกายภาพได้ดังนี้

Employee(Emp-No,Name,Address,Sex,Salary,DeptNo)

13.17



4

การออกแบบโครงสร้างทางกายภาพให้กับ Table

อาจใช้ภาษา SQL ในการสร้าง Table ขึ้นใช้งานแทนเช่น

CREATE TABLE Employee (EmpNo Char(5),

Name VARCHAR (25),

Address VARCHAR (30),

Sex CHAR(1),

Salary CURRENCY,

DeptNo CHAR(3))

PRIMARY KEY (EmpNo);

13.19


4

การกำหนด Integrity Rules

สามารถแบ่งเป็น 2 ส่วน ดังนี้

  • การกำหนด Entity Integrity Rule เป็นการกำหนด IntegrityRule ขึ้นเพื่อควบคุมค่าของ Attribute ต่างๆ ให้มีค่าเป็นไปตามที่กำหนดดังเช่น ตัวอย่างคำสั่ง SQL

  • การกำหนด Referential Integrity Rule เป็นการกำหนด Integrity Rule ขึ้นเพื่อควบคุมความถูกต้องในการอ้างถึงข้อมูลระหว่าง Table ต่างๆ ดังเช่น ตัวอย่างคำสั่ง SQL

13.20


4

การกำหนด Entity Integrity Rule

CREATE DOMAIN Sex as CHAR(1)

CHECK (VALUE IN (“M”, “F”)):

CREATE TABLE Employee (EmpNo CHAR(5) Not Null,

Name VARCHR(25) Not Null,

Address VARCHAR(30) Not Null,

Sex CHAR(1) Not Null,

Salary CURRENCY Not Null,

DeptNo CHAR(3) Not Null,

PRIMARY KEY (EmpNo);

13.21


4

การกำหนด Referential Integrity Rule

CREATE DOMAIN Sex as CHAR(1)

CHECK (VALUE IN (“M”, “F”)):

CREATE TABLE Employee (EmpNo CHAR(5) Not Null,

Name VARCHR(25) Not Null,

Address VARCHAR(30) Not Null,

Sex CHAR(1) Not Null,

Salary CURRENCY Not Null,

DeptNo CHAR(3) Not Null,

PRIMARY KEY (EmpNo);

FOREIGN KEY (DeptNo) REFERENCES

Department ON DELETE NO ACTION

ON UPDATE CASCADE;

13.22


4

กำหนดโครงสร้างทางกายภาพให้กับฐานข้อมูลกำหนดโครงสร้างทางกายภาพให้กับฐานข้อมูล

จุดประสงค์ในการกำหนดโครงสร้างทางกายภาพให้กับฐานข้อมูล เพื่อให้สามารถ

ใช้เนื้อที่ในการจัดเก็บข้อมูลได้อย่างมีประสิทธิภาพ และส่งถ่ายข้อมูลได้อย่าง

รวดเร็ว สำหรับขั้นตอนในการกำหนดโครงสร้างทางกายภาพให้กับฐานข้อมูลนั้น

มีดังนี้

  • วิเคราะห์ปริมาณข้อมูล

  • กำหนดโครงสร้างของแฟ้มข้อมูล (File organization)

  • กำหนด Index ให้กับ Table

  • กำหนดโครงสร้างให้กับ Table เพื่อลดความซ้ำซ้อนของข้อมูล

  • คำนวณเนื้อที่ในการจัดเก็บข้อมูล

13.23


4

วิเคราะห์ปริมาณข้อมูลวิเคราะห์ปริมาณข้อมูล

เป็นการวิเคราะห์ข้อมูลว่าเกี่ยวข้องกับงานต่าง ๆ อย่างไร เช่นความถี่ในการเพิ่ม

ลบ แก้ไข หรือเรียกใช้งาน เป็นต้น เพื่อใช้ตัดสินใจเลือกโครงสร้างของแฟ้มข้อมูล

ที่เหมาะสมกับฐานข้อมูลต่อไป

13.24


4

การกำหนดโครงสร้างของแฟ้มข้อมูล (File Organization)

เป็นขั้นตอนที่ นักวิเคราะห์และออกแบบระบบ จะต้องมีการเลือกโครงสร้างของ

แฟ้มข้อมูลที่เหมาะสมให้กับฐานข้อมูล เช่น Heap,Hash,Idexed Sequential

Access Method (ISAM)

13.25


4

กำหนด Index ให้กับ Table

เป็นขั้นตอนที่ผู้ออกแบบฐานข้อมูล จะต้องกำหนด Primary Index และ

Secondary Index ให้กับ Table เพื่อเพิ่มความสามารถในการเข้าถึงข้อมูล โดยมี

หลักในการพิจารณาดังนี้

  • เลือก Primary key มาสร้างเป็น Primaryindex

  • Index ควรสร้างขึ้นบน Table ที่มีจำนวนข้อมูลอยู่มาก

  • หลีกเลี่ยงการใช้ Attribute ที่มีการเปลี่ยนแปลงค่าบ่อย

  • หลีกเลี่ยงการใช้ Attribute ที่มีขนาดใหญ่มาสร้างเป็น Index

13.26


4

กำหนดโครงสร้างให้กับ Table เพื่อลดความซ้ำซ้อนของข้อมูล

เป็นขั้นตอนที่นักวิเคราะห์และออกแบบระบบ จะต้องพิจารณาเลือก Attribute

ประเภท Derived Data ว่า Attribute ใดควรกำหนดไว้ในโครงสร้างของ Table

รวมทั้งทำการปรับเปลี่ยนโครงสร้างของแต่ละ Table โดยใช้กฏของการทำ

Normalization เพื่อลดความซ้ำซ้อนของข้อมูลใน Table ต่าง ๆ

13.27


4

คำนวณหาเนื้อที่ที่จะต้องใช้ในการจัดเก็บข้อมูลคำนวณหาเนื้อที่ที่จะต้องใช้ในการจัดเก็บข้อมูล

เนื้อที่ของ Table = (จำนวน Tuple * ขนาดของ Tuble) + ขนาดของ Index +

เนื่อที่ที่ระบบใช้เพื่อกำหนดรายละเอียดของแต่ละ Table

ขนาดของ Tuple = ผลรวมของขนาดของ Attribute

ขนาดของ Attribute= ขนาดของ Attribute นั้น + เนื้อที่ที่ระบบใช้ตามประเภท

ของข้อมูลของ Attribute นั้น

13.28


4

กำหนดวิธีการรักษาความปลอดภัยกำหนดวิธีการรักษาความปลอดภัย

ในการกำหนดความปลอดภัยให้กับฐานข้อมูล จะแบ่งออกเป็น 2 ส่วนดังนี้

  • การกำหนดขอบเขตของข้อมูล (View) ให้กับผู้ใช้

  • การกำหนดสิทธิ์การใช้งานให้กับผู้ใช้

13.29


4

กำหนดวิธีการรักษาความปลอดภัยกำหนดวิธีการรักษาความปลอดภัย

  • การกำหนดขอบเขตของข้อมูล (View) ให้กับผู้ใช้เพื่อกำหนดขอบเขตของข้อมูล ที่สามารถถูกกระทำโดยผู้ใช้ที่เรียกใช้ View เช่น

CREATE VIEW Staff3

AS SELECT sno,fname,address,tel_no,position,sex

FORM staff WHERE bno = “B3”;

13.30


4

กำหนดวิธีการรักษาความปลอดภัยกำหนดวิธีการรักษาความปลอดภัย

การกำหนดสิทธิ์การใช้งานให้กับผู้ใช้ จะส่งผลให้แต่ละคน สามารถเข้าถึงข้อมูล

เฉพาะที่ตนเองมีสิทธิ์เท่านั้น เช่น

GRANT SELECT, UPDATE,DELETE

ON staff

TO manager;

เป็นคำสั่งที่ใช้กำหนดสิทธิ์การใช้งาน Table “staff” ซึ่งประกอบด้วย การเรียก

ดูข้อมูล (SELECT) การแก้ไขข้อมูล (UPDATE) และการลบข้อมูล

(DELETE) ให้กับผู้ใช้ที่ชื่อ “manager”

13.31


4

การตรวจสอบและปรับเปลี่ยนระบบการตรวจสอบและปรับเปลี่ยนระบบ

ขั้นตอนสุดท้ายของการออกแบบฐานข้อมูลในระดับกายภาพ ได้แก่

  • การตรวจสอบ

  • การปรับเปลี่ยนระบบ

    ซึ่งขั้นตอนที่เกิดขึ้น เมื่อฐานข้อมูลถูกใช้งานไปแล้ว เนื่องจากฐานข้อมูลที่

    ออกแบบไว้ อาจมีข้อผิดพลาดหรือ มีการเพิ่มเติม หรือเปลี่ยนแปลงความต้องการ

    ของผู้ใช้

13.32



4

Reference Book and Text Book โดยใช้

  • ตำราอ้างอิง

  • การวิเคราะห์และออกแบบระบบ กิตติ ภักดีวัฒนกุล และพนิดา พานิชกุล

  • Modern Systems Analysis & Design : Jeffrey A. Hoffer, Joey F.George, Joseph S. Valacich

13.34


4

Q & A โดยใช้

13.35


ad