Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore บทที่3การออกแบบฐานข้อมูลpdf

บทที่3การออกแบบฐานข้อมูลpdf

Published by nithiwan, 2017-03-21 02:03:09

Description: บทที่3การออกแบบฐานข้อมูลpdf

Search

Read the Text Version

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

ระบบฐานข้อมูล 373.1 จดุ ประสงคใ์ นการออกแบบฐานขอ้ มลู 3.1.1 ความจาเปน็ ในการออกแบบฐานขอ้ มลู การออกแบบฐานข้อมลู มีเป้าหมายอยู่ที่การสร้างประสิทธิภาพของการใช้งานให้แก่ผู้ใช้ จึงต้องมีการพัฒนา และออกแบบฐานข้อมูลให้มีคุณสมบัติตรงตามความต้องการของผู้ใช้ระบบ ทาให้ระบบน้ันทางานได้อย่างมีประสิทธิภาพ การออกแบบฐานข้อมูลจึงมีความสาคัญและมีความจาเป็นเน่ืองจากการออกแบบฐานข้อมูลเป็นการจัดมาตรฐานของข้อมูล ทาให้ข้อมูลไม่ซ้าซ้อน จึงเป็นการตรวจสอบความถูกต้องของข้อมูล การออกแบบฐานข้อมูลท่ีถูกต้องจะทาให้การเรียกใช้ข้อมูลไดถ้ ูกตอ้ ง สะดวก รวดเร็ว ไม่มปี ญั หาในการจดั การฐานข้อมูล 3.1.2 จดุ ประสงคใ์ นการออกแบบฐานขอ้ มลู จดุ ประสงค์ในการออกแบบฐานข้อมลู มดี ังนี้ 1) ลดความซ้าซอ้ นของข้อมูล 2) ตอบสนองความจาเป็นในการเรียกใช้ข้อมูลในเวลาท่ีสั้นท่ีสุด เพราะข้อมูลในตารางที่ออกแบบฐานข้อมูลอย่างถูกต้องจะไม่มีการซ้าซ้อน ทาให้ไม่เสียเวลาค้นหาข้อมูล เนื่องจากจะค้นหาขอ้ มลู ที่ตอ้ งการทอี่ ยใู่ นตารางท่ีเก่ยี วข้องเทา่ นน้ั 3) การออกแบบฐานข้อมูลจะเป็นการตรวจสอบความถูกต้องรวมท้ังจัดมาตรฐานของขอ้ มลู ได้สะดวก เนื่องจากมีข้อมูลไมซ่ ้าซอ้ นกนั 4) สามารถกาหนดลักษณะการเข้าถึงข้อมูลสาหรับผู้ใช้แต่ละประเภทได้ เช่นพนักงานท่ัวไป สามารถดูตารางที่มีข้อมูลของตัวเองได้เท่านั้น ไม่สามารถแก้ไขข้อมูลต่าง ๆ ในฐานข้อมลู ได้ ส่วนพนกั งานปอ้ นขอ้ มลู สามารถแกไ้ ขขอ้ มลู สินค้าในตารางสนิ ค้าได้ เปน็ ตน้ 5) มีความเป็นอิสระระหว่างข้อมูลกับแอพพลิเคช่ัน เน่ืองจากเราสามารถออกแบบแอพพลิเคชั่นให้ดึงข้อมูลที่ต้องการจากฐานข้อมูลเท่าน้ัน ข้อมูลจะอยู่ในฐานข้อมูล เมื่อมีการเปล่ียนแปลงข้อมูลจะทาการเปล่ียนที่ฐานข้อมูลเท่านั้น ส่วนแอพพลิเคช่ันทาหน้าที่เป็นตัวกลางระหว่างฐานข้อมูลกบั ผ้ใู ชเ้ ทา่ น้ัน

ระบบฐานข้อมลู 383.2 การออกแบบฐานขอ้ มลู (Database Design) การออกแบบฐานข้อมูลเป็นส่วนท่ีสาคัญท่ีสุดในการทางานด้านฐานข้อมูล หากโครงสร้างของฐานข้อมูลท่ีออกแบบไว้ไม่ดี แม้ว่าจะใช้โปรแกรมจัดการฐานข้อมูลที่ดีเย่ียมเพียงใดก็ตาม ย่อมก่อให้เกิดปัญหาไม่มากก็น้อยในการเรียกใช้ฐานข้อมูล ทาให้การทางานในข้ันตอนต่อ ๆ ไปยุ่งยากดังน้ันจึงควรให้ความสาคัญในการออกแบบฐานข้อมูล โดยท่ัวไปการออกแบบฐานข้อมูลจะมีอยู่ 3ระดบั ดังนี้ 3.2.1 การออกแบบฐานขอ้ มลู ในระดบั ความคดิ (Conceptual Database Design) การออกแบบฐานข้อมูลในระดับความคิด เป็นการออกแบบฐานข้อมูลที่เน้นการออกแบบข้อมูล (Data Driven) ขั้นตอนนี้เป็นการออกแบบถึงข้อมูลที่ต้องการ และความสัมพันธ์ระหว่างข้อมูลเท่านั้น เป็นการออกแบบที่ไม่ต้องคานึงถึงระบบจัดการฐานข้อมูล (DBMS) ชุดคาส่ังงานท่ีใช้กับระบบประยุกต์ใช้งานต่าง ๆ (Application Program) ภาษาคอมพิวเตอร์ ปัจจัยด้านฮาร์ดแวร์หรือปัจจยั ด้านกายภาพอืน่ ๆ (Physical) (ศิริลกั ษณ์ โรจนกจิ อานวย, 2545 : 38) การออกแบบฐานข้อมูลในระดับแนวความคิด บางคร้ังเรียกว่าการออกแบบในระดับสูง(High Level Database) ซ่งึ สามารถออกแบบข้อมูลได้ 2 ลกั ษณะ ดังน้ี 1) แบบล่างไปบน (Bottom-Up) วิธีการนี้เร่ิมต้นการพิจารณาจากรายละเอียดของข้อมูล หรือแอททริบิวต์ (Attribute) แล้วนามาจัดกลุ่มเป็นเอนทิตี (Entity) และความสัมพันธ์(Relationship) วิธกี ารน้ีเหมาะสาหรับองค์กรที่มีรายละเอยี ดของขอ้ มูลไมม่ าก และไมซ่ บั ซ้อน 2) แบบบนมาล่าง (Top-Down) วิธีการน้ี เร่ิมต้นจากการกาหนดเอนทิตีว่ามีเอนทิตีอะไรบ้าง แล้วทาการพิจารณารายละเอียดของข้อมูลท่ีแต่ละเอนทิตีควรจะมี รวมถึงความสัมพันธ์ต่าง ๆ วิธีการนี้เหมาะสาหรับองค์กรที่มีรายละเอียดของข้อมูลมาก และมีฐานข้อมูลที่ซับซ้อน ในการออกแบบฐานข้อมูลจะใช้การออกแบบทั้งสองวิธีเสริมกัน แทนที่จะใช้แยกกันอย่างส้ินเชิง เช่น การออกแบบด้วยวิธี Top-Down โดยใช้แบบจาลอง E-R ก็ยังคงต้องใช้แนวคิดการทาให้เป็นบรรทัดฐาน (Normalization) ซึ่งเป็นวิธีการแบบ Bottom-Up เพื่อทบทวนการออกแบบใหส้ มบูรณ์ ดังรปู 3.1

ระบบฐานขอ้ มลู 39ตวั อยา่ งแสดงการออกแบบดว้ ยวธิ ี Top-Down และ Bottom-Up บนมาลา่ ง การออกแบบฐานขอ้ มลู ระดบั (Top-Down) แนวคิดเอนทิตี เอนทิตี เอนทิตี ลา่ งไปบน แอททริบิวต์ แอททริบิวต์ แอททริบิวต์ แอททริบิวต์ แอททริบิวต์ แอททริบิวต์(Bottom-Up)รปู ท่ี 3.1 การออกแบบ แบบ Top-Down และ Bottom-Up3.2.2 การออกแบบฐานขอ้ มลู ในระดบั ตรรกะ (Logical Database Design) เป็นการนาผลจากการออกแบบฐานข้อมูลในระดับแนวคิดมาทาการปรับเพื่อให้เหมาะสมกับรูปแบบฐานขอ้ มลู ท่ีเลือกใช้ ผลทไ่ี ด้จะเป็นเคา้ รา่ งของฐานข้อมูลที่มีรายละเอียดสมบูรณ์ท่ีสามารถนาไปกาหนดภาษาสาหรับนิยามข้อมูล (DDL) ในข้ันตอนการออกแบบในระดับกายภาพได้ ข้ันตอนนจี้ งึ เปน็ การแปลงผลจากการออกแบบในระดับแนวคิด (Mapping) ให้อยู่ในรูปแบบของระบบจัดการฐานข้อมูล (DBMS) ท่ีเลอื กใช้ เชน่ รปู แบบเชิงสมั พันธ์ ระบบจัดการฐานข้อมูลเชิงสัมพันธ์ (Relational Database Management Systems :RDBMS) ในขนั้ ตอนนีเ้ ป็นการแปลงเค้าร่างในระดับแนวคิดให้เป็นรีเลชันท่ีประกอบด้วย แอททริบิวต์รวมถึงการระบุข้อกาหนดต่าง ๆ ให้กับรีเลชัน เช่น คีย์หลัก คีย์นอก โดเมนของแอททริบิวต์ และมีการใช้แนวคิดเรื่องการทาให้เป็นรูปแบบบรรทัดฐาน (Normalization) เข้ามาช่วยในการออกแบบเพ่ือปรบั การออกแบบฐานข้อมลู ท่เี หมาะสม ข้ันตอนการออกแบบฐานข้อมูลในระดับตรรกะ มีความสาคัญมากต่อความสาเร็จในการออกแบบฐานข้อมูล เพราะสามารถตรวจสอบได้ว่าตรงตามเป้าหมายและแผนท่ีวางไว้ ตลอดจนการนาไปใชใ้ หต้ รงตามความตอ้ งการได้หรือไม่ ดังน้ันการออกแบบในขั้นตอนนี้จะต้องทาการรวบรวม

ระบบฐานขอ้ มลู 40การออกแบบฐานข้อมูลที่ได้มาจากผู้ใช้แต่ละกลุ่มมารวมกัน และปรับเป็นฐานข้อมูลขององค์กรท่ีสมบรู ณ์ (Global Logical Database) 3.2.3 การออกแบบฐานขอ้ มลู ในระดบั กายภาพ (Physical Database Design) การออกแบบฐานข้อมูลในระดับกายภาพเป็นการนาข้อมูลท่ีออกแบบในระดับตรรกะมากาหนดโครงสร้างข้อมูลและการจัดเก็บ (Storage) และวิธีการเข้าถึงข้อมูล (Access Method) ได้อย่างมีประสิทธิภาพ รวมถึงการกาหนดระบบรักษาความปลอดภัยของข้อมูลด้วย เป็นขั้นตอนการออกแบบในระดับล่างสุด เช่น การวิเคราะห์รายการ การจัดแฟ้มข้อมูล วิธีการเข้าถึงข้อมูลการประมาณเน้ือที่ในการจัดเก็บข้อมูล การแปลงการออกแบบในระดับตรรกะตามระบบจัดการฐานข้อมูลท่ใี ช้ และระบบรกั ษาความปลอดภัยของฐานข้อมลู เปน็ ตน้ กล่าวโดยสรุป การออกแบบฐานข้อมูล จะได้เค้าร่าง (Schema) ของฐานข้อมูลในแต่ละระดบั ดังรูป 3.2 การออกแบบ เคา้ รา่ ง (Schema) ตวั อยา่ ง เชน่ระดับแนวคิด (CONCEPTUAL) เอนทติ ี ความสัมพนั ธ์ แอททริบิวต์ และคีย์หลักระดบั ตรรกะ (LOGICAL) ER-โมเดล DDL สาหรบั รีเลชัน แอททริบิวตแ์ ละข้อกาหนดต่าง ๆ Table Definitions ขนาดพ้ืนท่ฐี านข้อมลู วิธีการระดับกายภาพ (PHYSICAL) จัดเกบ็ การเข้าถึงขอ้ มูล/การ สร้างอนิ เด็กซ์ Databaseรปู ท่ี 3.2 เค้าร่าง (Schema) ของฐานข้อมูลแต่ละระดับ

ระบบฐานข้อมลู 413.3 ขน้ั ตอนของการออกแบบฐานขอ้ มลู ข้ันตอนในการออกแบบฐานข้อมูลเป็นการนาระบบจัดการฐานข้อมูล (DBMS) มาใช้ในการจัดการฐานข้อมูล ซ่ึงฐานข้อมูลเล็ก ๆ ท่ีใช้โดยผู้ใช้คนเดียวหรือธุรกิจขนาดย่อม การออกแบบฐานข้อมูลไม่ค่อยยุ่งยาก แต่ถ้าเป็นการออกแบบฐานข้อมูลขององค์กรขนาดใหญ่ที่มีข้อมูลมากมายก็จะเป็นเรื่องซับซ้อน ใชเ้ วลาในการออกแบบฐานข้อมูลที่มีขนาดใหญ่ เพราะการออกแบบฐานข้อมูลต้องเหมาะสมและใช้กับระบบได้เป็นอย่างดี การประมวลผลก็จะมีประสิทธิภาพ โดยข้ันตอนของการออกแบบฐานข้อมูล แบง่ เปน็ 6 ข้ันตอน ดงั นี้ 1. การรวบรวมและวเิ คราะห์ความตอ้ งการใช้ข้อมลู 2. การออกแบบฐานข้อมูลในระดบั แนวคิด 3. การเลอื กระบบจัดการฐานข้อมูล 4. การนาฐานข้อมูลท่ีออกแบบในระดบั แนวคดิ ใหเ้ ข้าสู่ระบบจดั การฐานข้อมูลท่ีเลือกใช้ 5. การออกแบบฐานข้อมลู ในระดับกายภาพ 6. การนาฐานขอ้ มลู ไปใช้ และประเมินผล ขนั้ ตอนที่ 1 การรวบรวมและวิเคราะหค์ วามตอ้ งการใชข้ อ้ มลู ในการออกแบบฐานข้อมูลที่ดี จาเป็นต้องศึกษาถึงความต้องการใช้ข้อมูลของผู้ใช้ ขั้นตอนในการกาหนดความต้องการของผู้ใช้จาเป็นต้องศึกษาอย่างละเอียด โดยการศึกษาจะต้องครอบคลุมถึงผู้ใช้ข้อมูลในปัจจุบันและผู้ใช้ที่อาจจะใช้ข้อมูลในอนาคต การนาข้อมูลไปประยุกต์ใช้งานการวเิ คราะหค์ วามต้องการใช้ข้อมูลมขี ้ันตอน ดังน้ี 1) กาหนดกลมุ่ ผใู้ ช้ข้อมูลในระบบงานต่าง ๆ วา่ มีกลุ่มใดบ้าง ผู้ใชห้ ลักในแตล่ ะกลมุ่มใี ครบา้ ง และระบบงานต่าง ๆ มีข้ันตอนการทางานและใชข้ ้อมลู อะไร ผูใ้ ช้กลุ่มใดจะตอ้ งใชข้ ้อมูลในระบบงานใด รวมถงึ ศึกษาความสัมพันธข์ องข้อมูลในระบบงานตา่ ง ๆ 2) ทบทวนเอกสารทีใ่ ช้อยู่ ซง่ึ เป็นการศึกษา และวเิ คราะห์เอกสารของระบบงานต่าง ๆ ท่ีมีอยู่ รวมถึง รูปแบบรายงานต่าง ๆ ท้ังนี้เพื่อทบทวนวา่ เอกสารเหล่านี้จะช่วยใหก้ ารรวบรวมและวเิ คราะห์ความตอ้ งการข้อมลู ได้ละเอียดครบถว้ นยิ่งข้ึน 3) วิเคราะห์สภาพการปฏิบัติงาน และความต้องการในการประมวลผลข้อมูล โดยการศกึ ษาถงึ แผนการใช้ข้อมูลซึ่งจะวิเคราะห์ประเภทของรายการข้อมูลนาเข้า รายงานประเภทต่าง ๆ

ระบบฐานข้อมลู 42และความถีข่ องการประมวลผล รวมถึงการออกรายงาน การศึกษาเหล่าน้ีจะเป็นประโยชน์ท่ีจะทาให้ทราบถงึ ปริมาณของขอ้ มูล ความต้องการเรยี กใชแ้ ละปรบั ปรุงขอ้ มลู ของผู้ใช้งาน 4) การสัมภาษณ์ และออกแบบสอบถามเพ่ิมเติม เพื่อให้ผู้ใช้ข้อมูลตอบคาถามเกี่ยวกับการจัดลาดับก่อนหลังในการใช้ข้อมูล ความสาคัญของระบบงานต่าง ๆ และปัญหาท่ีอาจจะเกิดข้ึน เช่น ความถ่ีของการเกิดเครื่องเสีย หรือการรักษาความปลอดภัยของข้อมูล ทั้งนี้เพื่อประโยชน์ในการจัดลาดับในการใช้ข้อมูลของผู้ใช้ท้ังหมดในระบบฐานข้อมูล และการกาหนดการควบคุมความปลอดภยั ของขอ้ มูล ขน้ั ตอนท่ี 2 การออกแบบฐานขอ้ มลู ในระดบั แนวคดิ เปน็ การออกแบบเค้ารา่ งของข้อมูลในระดับแนวคิด (Conceptual Schema Design) เพ่ือกาหนดโครงสร้างของฐานขอ้ มูล ความหมาย ความสัมพันธแ์ ละข้อจากดั ต่าง ๆ ของข้อมลู ในระบบ วิธีการออกแบบข้ันน้ีจะระบุถึงเค้าร่างของฐานข้อมูลว่ามีเอนทิตีอะไร มีความสัมพันธ์ประเภทไหน แอททริบิวต์ต่าง ๆ ที่ควรจะมี รวมถึงการกาหนดว่าแอททริบิวต์ใดเป็นคีย์หลัก หรือเป็นคีย์นอก นอกจากน้ียังต้องคานึงว่าเอนทิตีที่กาหนดข้ึนได้ถูกออกแบบให้อยู่ในรูปแบบบรรทัดฐาน(Normalization) ที่เหมาะสมหรือไม่ ท้ังนี้เพื่อไม่ให้เกิดความผิดพลาดกับฐานข้อมูลได้ในภายหลังการออกแบบนย้ี ังรวมถึงการกาหนดกฎเกณฑ์ของข้อมูลในระบบงาน และการควบคุมความปลอดภัยของฐานขอ้ มลู นอกจากการออกแบบเค้าร่างของข้อมูล ยังต้องพิจารณาถึงขั้นตอนในการทางานของระบบงานที่ออกแบบวา่ มีขอ้ มูลทเี่ ก่ียวข้องกบั หนา้ ทีง่ านตา่ ง ๆ อยา่ งไร มีการเคลื่อนไหวของข้อมูลจากจุดใดไปยังจุดใดบ้าง มีการประมวลผลอะไร และจัดเก็บอย่างไรบ้าง โดยอาจจะวิเคราะห์การเคลื่อนไหวของข้อมูลในระบบงานที่ได้จากการเขียน Data Flow Diagram ซึ่งจะทาให้ทราบว่าข้ันตอนการทางานของหน้าที่ต่าง ๆ ในระบบงานว่ามีอะไร เพราะผลจากการวิเคราะห์นี้จะทาใ ห้สามารถสร้างคุณลักษณะของโปรแกรมใช้งาน ซึ่งจะเป็นประโยชน์ในการออกแบบโปรแกรมประยุกต์ใหเ้ หมาะสมยิ่งขึ้น ซ่ึงประกอบด้วยขัน้ ตอนตามลาดับ ดงั น้ี 1) กาหนดเอนทิตีที่เก่ียวข้อง เมื่อได้ศึกษารายละเอียดของระบบงานที่จะออกแบบจะต้องกาหนดเอนทิตีท่ีเกี่ยวข้องว่ามีอะไรบ้าง เอนทิตีเหล่านั้นเป็นเอนทิตีท่ีมีรายละเอียดย่อยของตัวเองที่สามารถจัดกลุ่มเป็น Supertype หรือ Subtype หรือไม่ ตัวอย่างฐานข้อมูลของบริษัทประกอบดว้ ยเอนทติ ี ดงั นี้

ระบบฐานขอ้ มลู 43 EMPLOYEE (พนักงาน) DEP (แผนก) PROJECT (โครงการ) FAMILY (ประวัตคิ รอบครัวของพนักงาน) PROJWORK (งานทมี่ อบหมาย) 2) พิจารณาความสมั พันธ์ระหวา่ งเอนทิตี การพิจารณาความสัมพันธ์ระหว่างเอนทิตีเป็นเร่ืองท่ีไม่มีกฎเกณฑ์แน่นอน ผู้ออกแบบฐานข้อมูลจะต้องวิเคราะห์จากข้อมูลท่ีได้ศึกษาจากขั้นตอนแรกว่า ความสัมพันธ์ของข้อมูลระหว่างเอนทิตีต่าง ๆ ว่าควรจะมีความสัมพันธ์อย่างไรบ้างท้ังนี้เพราะกฎเกณฑ์ในการดาเนนิ งานของแต่ละหน่วยงานอาจจะแตกต่างกัน ตัวอย่าง พนักงานหนึ่งคนได้รับมอบหมายให้เป็นผู้จัดการของแผนกใดแผนกหนึ่งเพียงแผนกเดียว ในขณะที่อีกบริษัทหนึ่งกาหนดความสมั พนั ธ์วา่ พนกั งานหนง่ึ คนอาจได้รับมอบหมายใหเ้ ป็นผจู้ ดั การไดห้ ลายแผนก เปน็ ตน้ ดังน้ันเม่ือเข้าใจถึงกฎเกณฑ์ต่าง ๆ แล้ว ก็จะทาการระบุความสัมพันธ์ระหว่างเอนทิตีว่าเป็นแบบใด เช่น เป็นแบบหนึ่งต่อหน่ึง หน่ึงต่อกลุ่ม เป็นต้น วัตถุประสงค์ในการกาหนดความสัมพันธ์ของข้อมูลระหว่างเอนทิตีก็เพื่อเป็นประโยชน์ในการกาหนดแอททริบิวต์ที่จะใช้ในการอ้างองิ กันระหว่างเอนทติ ีไดน้ ่นั เอง 3) กาหนดคีย์หลัก คีย์สารอง คีย์นอก และแอททริบิวต์อื่น ๆ ที่เกี่ยวข้อง หลังจากท่ีกาหนดเอนทิตีและความสัมพันธ์ระหว่างเอนทิตีแล้วก็จะทาการระบุแอททริบิวต์ต่าง ๆ ที่เป็นคีย์ในแตล่ ะเอนทติ ี ว่ามีแอททริบิวต์อะไรบ้าง โดยเฉพาะแอททริบิวต์ท่ีจะเป็นคีย์หลักของเอนทิตีน้ัน ๆ ควรจะเปน็ แอททรบิ ิวต์อะไรมีมากกว่าหนึง่ แอททรบิ วิ ต์หรือไม่ น่ันคือมีคีย์คู่แข่งหรือไม่ (Candidate Key)หรือเป็นคีย์หลักประกอบด้วยแอททริบิวต์หลายแอททริบิวต์รวมกัน (Composite Key) โดยการกาหนดให้แอททรบิ ิวตใ์ ดเปน็ คยี ์หลกั ก็พอ โดยให้ระบุแอททริบิวต์ท่ีไม่ได้เป็นคีย์หลักเป็นคีย์สารองเช่น หากเอนทิตีพนักงาน ประกอบด้วยแอททริบิวต์รหัสพนักงาน หรือแอททริบิวต์เลขท่ีบัตรประชาชน ซ่ึงทั้งสองแอททริบิวต์มีคุณสมบัติเป็นคีย์หลักได้ หากเลือกแอททริบิวต์ รหัสพนักงานเป็นคีย์หลกั แอททริบิวต์เลขทีบ่ ตั รประชาชนก็จะเป็นคยี ส์ ารอง (Alternate Key) นอกจากกาหนดคีย์หลักแล้วยังต้องกาหนดว่าความสัมพันธ์ระหว่าง เอนทิตีจะเช่ือมโยงโดยใช้แอททริบิวต์อะไร น่ันคือ การกาหนดให้แอททริบิวต์หน่ึง ๆ (หรือมากกว่าหน่ึง) เป็นคีย์นอก(Foreign Key) ทส่ี ามารถไปอา้ งองิ ถงึ แอททรบิ วิ ต์ทีเ่ ป็นคีย์หลักในอกี เอนทิตีหนง่ึ ทมี่ ีความสมั พนั ธก์ นั

ระบบฐานขอ้ มูล 44 ในการกาหนดให้แอททริบวิ ต์ใดเป็นคียน์ อก ยงั ครอบคลมุ ไปถงึ เง่ือนไขของการแก้ไขหรอืเปลย่ี นแปลงข้อมลู ของคยี ์หลกั ในอกี เอนทิตีหนง่ึ ที่ถูกอ้างอิงโดยคีย์นอกว่าจะทาไดใ้ นลกั ษณะใด เชน่แบบมขี ้อจากัด (Restrict) แบบต่อเรียง (Cascade) หรือแบบคา่ ว่าง (Nullify) หรือแบบคา่ ปริยาย(Default) หลังจากที่ทาการกาหนดเรื่องคีย์หลักและคีย์นอกแล้ว ก็จะพิจารณาถึงรายละเอียดของแอททริบิวต์อื่น ๆ ท่ีควรจะรวมอย่ใู นเอนทติ นี น้ั ๆ วา่ มีอะไรบ้าง โดยทัว่ ไป แอททริบวิ ตท์ ่ีแปลค่ามา (Derived Attribute) จะไม่นิยมกาหนดให้อยู่ในเอนทิตีเพราะทาให้เกิดความซ้าซ้อนขึ้น แต่ถ้าหากข้อมูลของแอททริบิวต์นั้น ๆ มีความหมายท่ีสาคัญต่อเอนทติ นี ้ัน ก็อาจจะรวมแอททริบิวต์ในเอนทิตีได้ โดยใหร้ ะบวุ า่ เป็นแอททริบวิ ต์ท่ีแปลคา่ มา 4) การปรับเค้าร่างข้อมูลให้อยู่ในรูปแบบบรรทัดฐาน การปรับเค้าร่างของข้อมูลให้อยู่ในรูปแบบบรรทัดฐาน (Normalization) มีวัตถุประสงค์เพ่ือให้โครงสร้างข้อมูลไม่มีความซ้าซ้อนของข้อมูล ข้อมูลมีความถูกต้องและเช่ือถือได้ ดังนั้นในการออกแบบฐานข้อมูล จะต้องทาการปรับข้อมูลในรูปแบบบรรทัดฐาน คาถามมีอยู่ว่าจะต้องทาให้อยู่ในรูปแบบบรรทัดฐานข้ันไหน จึงจะเหมาะสม โดยทั่วไปการปรับเค้าร่างของข้อมูลในเอนทิตีหนึ่ง ๆ จะทาถึงรูปแบบบรรทัดฐานข้ันที่ 3เป็นอย่างน้อย ยกเว้นจะมีบางกรณีท่ีเข้าเง่ือนไขที่ต้องปรับให้ถึงรูปแบบบรรทัดฐานบอยส์และคอดด์หรือรปู แบบบรรทัดฐานขั้นท่ี 4 และ 5 5) พจิ ารณาถึงลักษณะและขอบเขตของข้อมลู ท่ีแต่ละแอททริบิวต์สามารถจัดเก็บได้รวมถึงขอ้ จากดั หรอื กฎเกณฑ์ต่าง ๆ ที่มีผลตอ่ การจัดเกบ็ ขอ้ มลู ในแต่ละแอททริบิวต์ ข้ันตอนนี้เป็นการพิจารณากฎเกณฑ์ต่าง ๆ ท่ีศึกษาจากธุรกิจนั้น ๆ ว่าข้อมูลในระบบงานท่ีออกแบบอยู่ควรจะเก็บข้อมูลในลักษณะใด มีขอบเขต และข้อจากัดในการจัดเก็บข้อมูลอย่างไรบ้างทั้งน้ีเพื่อเป็นการควบคุมถึงความถูกต้องและเช่ือถือได้ของข้อมูล กล่าวอีกนัยหนึ่งคือ ข้ันตอนนี้เป็นการกาหนดโดเมน (Domain) ของข้อมลู ท่ีแอททริบิวต์แต่ละแอททริบิวต์จะจัดเก็บ รวมถึงกฎเกณฑ์ท่ีควบคุมการเพมิ่ เติม การลบ ปรับปรุงข้อมูล (Trigger Operations) ตวั อยา่ ง การกาหนดขอบเขตค่าของข้อมลู (Domain) ของแอททริบิวต์ที่เป็นคีย์หลักหรือคยี น์ อกว่ามกี ฎดังนี้

ระบบฐานขอ้ มูล 45 คยี ห์ ลกั : - ต้องเปน็ ค่าเอกลักษณ์หรือไมซ่ า้ กนั (Uniqueness) - หากคีย์หลักประกอบด้วยแอททริบิวต์หลายแอททริบิวต์รวมกัน หรือคีย์ผสม ค่าของแอททรบิ วิ ตแ์ ต่ละแอททริบวิ ต์ทีเ่ ปน็ ส่วนประกอบของคียห์ ลกั อาจไม่จาเป็นต้องมีค่าเป็นเอกลักษณ์ก็ได้แตเ่ มือ่ นามารวมกนั จะตอ้ งใหค้ า่ ท่ีเปน็ เอกลกั ษณ์ - แอททริบิวต์ที่เป็นคีย์หลักหรือแอททริบิวต์ท่ีเป็นส่วนประกอบของคีย์ผสมจะมีค่าว่างไม่ได้ - คีย์หลักหรือคีย์ผสมอาจมีค่าเป็นค่าโดยปริยายท่ีกาหนดข้ึนได้ (Default Value)ตราบใดท่ที าให้คยี ์หลักหรอื คีย์ผสมนั้นยังคงมคี ่าเปน็ เอกลกั ษณไ์ ด้ คยี น์ อก : - ประเภทของข้อมูล (Data Type) ความยาว (Length) และรูปแบบ (Format) ของคียน์ อก จะตอ้ งเหมือนกบั คีย์หลักทถี่ กู อ้างอิงถงึ ในอีกเอนทิตีหนง่ึ - หากข้อมูลของแอททริบิวต์ที่เป็นคีย์นอกในเอนทิตีหน่ึงเป็นค่าที่เป็นเอกลักษณ์(Uniqueness) น่นั หมายความว่าเอนทติ นี นั้ มีความสัมพันธ์กันเอนทิตีท่ีถูกอ้างอิงถึงแบบ 1 : 1 แต่ถ้าขอ้ มูลของแอททริบวิ ตท์ เี่ ป็นคียน์ อกไม่เป็นค่าเอกลกั ษณ์จะเปน็ ความสัมพันธแ์ บบ 1 : N เปน็ ต้น - การเพิ่มเติม แก้ไขหรือเปล่ียนแปลงค่าของคีย์นอก จะเป็นไปตามกฎท่ีกาหนดไว้ในโครงสร้าง เชน่ แบบมขี ้อจากดั (Restrict) หรือแบบต่อเรยี ง (Cascade) เป็นต้น โดยท่ัวไปในการกาหนดขอบเขตคา่ แอททริบิวต์ จะระบุถึงลักษณะตา่ ง ๆ ดังต่อไปน้ี - ประเภทของข้อมูลท่ีจัดเก็บ (Data Type) เช่น เก็บข้อมูลประเภทตัวอักษร ตัวเลข เปน็ ตน้ - ความยาวของขอ้ มลู ท่ีจดั เก็บ (Length) - รูปแบบของขอ้ มลู (Format) เช่น เบอร์โทรศัพท์ จะจัดเก็บในรูปแบบ xxx-xxxx หรือ xxxxxxx สว่ นวนั ท่ีจะจัดเกบ็ ในรูปแบบ เดือน/วัน/ปี หรอื วนั /เดอื น/ปี เป็นต้น - ขอบเขตของข้อมูล (Range) เช่น คีย์หลักจะต้องเป็นค่าเอกลักษณ์ หรือวันท่ีเริ่ม ทางาน จะตอ้ งเปน็ วนั จันทรถ์ ึงวันศกุ ร์ เปน็ ต้น - คาอธิบายความหมายของแอททริบิวต์ (Meaning)

ระบบฐานขอ้ มลู 46- ต้องเป็นคา่ เอกลักษณ์หรือไม่ (Unique/Non-unique)- จะมคี ่าว่างได้หรือไม่ (Null/Not Null)- มีคา่ โดยปริยายหรือไม่ (Default Value) ตัวอย่าง การกาหนดขอบเขตค่าแอททริบิวต์ EMPNUM และ HIREDATE ของเอนทิตีEMPLOYEE เปน็ ดงั นี้EMPNUM Data Type : CharacterHIREDATE Length : 4 Range : 1001 – 5999 Meaning : รหัสพนกั งานของบรษิ ทั Uniqueness : Unique Null Value : not null Data Type : Date Length : mm/dd/yy Range : 01/01/91 – 12/31/99 Meaning : วันท่ีเริม่ ทางาน Uniqueness : not Unique Null Value : not null หลังจากที่ได้กาหนดโดเมนให้กับแอททริบิวต์แล้ว ผู้ออกแบบจะต้องกาหนดถึงกฎเกณฑ์ท่ัวไปในการดาเนินธุรกิจของระบบที่ออกแบบ โดยพิจารณาจากข้อมูลที่ศึกษาในข้ันตอนท่ี 1 ว่ามีกฎเกณฑ์อย่างอ่ืนอะไรบ้าง (Trigger Operation) นอกเหนือจากข้อจากัดท่ีกาหนดไว้ในโดเมนที่กล่าวมาข้างต้น ซ่ึงอาจจะมีผลต่อความถูกต้องในการเพิ่มเติม การลบ หรือแก้ไขข้อมูล ตัวอย่างลกู คา้ ที่ซื้อสินคา้ จะสั่งซ้อื เกินยอดวงเงนิ ที่อนมุ ตั ิใหส้ ่ังซื้อไม่ได้ หรือเงินเดือนของพนักงานบริษัทจะเกินยอด 500000 ไม่ได้ เป็นต้น เงื่อนไขหรือกฎเกณฑ์ที่กาหนดขึ้นเหล่านี้ จะมีผลกระทบต่อข้อมูลในเอนทิตีหน่ึงหรือบางคร้ังอาจจะกระทบถึงหลายเอนทิตีได้ ซึ่งเมื่อมีการเพิ่มเติม การลบ หรือแก้ไขข้อมูลที่ไม่เป็นตาม

ระบบฐานขอ้ มูล 47เง่อื นไขที่กาหนดไว้ จะต้องมีข้อความเตือนหรือตอบโต้ว่าการกระทาดังกล่าวผิดกฎเกณฑ์และปฏิเสธไมใ่ หท้ าการเพม่ิ เตมิ แกไ้ ขหรือปรับปรุงขอ้ มูลดังกล่าวเกิดขึ้น ดังนน้ั ผู้ออกแบบจะต้องระบถุ งึ กฎเกณฑด์ งั กลา่ วข้างตน้ เป็นรายละเอียดดงั น้ี - เง่ือนไขหรอื กฎเกณฑ์ท่ีระบุ - การกระทาใดท่ีไม่ให้ทาหากไม่เป็นไปตามกฎเกณฑ์ท่ีระบุ เช่น การเพ่ิมเติม หรือการ ลบ หรอื การปรับปรุงข้อมูล - กฎเกณฑน์ นั้ กระทบเอนทติ หี รอื แอททริบวิ ต์ใด - ผลท่ีอาจจะเกิดข้ึนหากไมป่ ฏิบัตติ ามเงอื่ นไขหรือกฎเกณฑ์ที่ระบุไว้ 6) รวบรวมและทบทวนการออกแบบฐานข้อมูลในระดับแนวคิดที่ได้ออกแบบไปขั้นตอนนี้มีวัตถุประสงค์เพื่อรวบรวมเค้าร่างฐานข้อมูลท่ีได้ออกแบบไปทั้งหมดว่ามีความซ้าซ้อนหรือความไม่ถูกต้องเกิดข้ึนอีกหรือไม่ ส่ิงหนึ่งที่ต้องพิจารณาในข้ันตอนนี้คือ วิวของผู้ใช้หลายคนที่มีส่วนร่วมในการออกแบบ มีความแตกต่างและซ้าซ้อนกันหรือไม่ (User View Integration) ตัวอย่างข้อมูลพนักงานอาจเก่ียวข้องกับผู้ใช้ข้อมูลหลายคน เช่น ผู้ใช้ข้อมูลจากแผนกบริหารบุคคล ผู้ใช้ข้อมูลจากแผนกบัญชีการเงิน ฯลฯ ผู้ออกแบบฐานข้อมูลพนักงานก็จะต้องพิจารณาว่าผู้ใช้สองกลุ่มมองภาพข้อมูลของพนักงานแตกต่างกันหรือไม่ มีอะไรท่ีเป็นสาระสาคัญท่ีต้องปรับปรุงเค้าร่างของขอ้ มูลท่อี อกแบบอีกหรือไม่ นอกจากน้ีให้นาเค้าร่างของฐานข้อมูลในระดับแนวคิดท้ังหมดมาพิจารณาอีกคร้ังหน่ึงว่ามีอะไรทขี่ ดั แย้งกับรายละเอียดท่ีได้ศึกษาในขั้นตอนแรกหรือไม่ เพ่ือจะได้ทาการปรับปรุงในสิ่งท่ีขาดไปให้สมบูรณ์ และสิ่งหนึ่งที่จะต้องพิจารณาถึงคือ ผลกระทบของปริมาณงานหรือการเปลี่ยนแปลงของระบบงานท่ีอาจจะเกิดข้ึนในอนาคตว่าจะกระทบต่อระบบในปัจจุบันอย่างไรบ้าง เช่น หากมีเอนทิตีใหม่เกิดข้ึนจะกระทบกับระบบท่ีออกแบบอยู่มากน้อยเพียงใด ความสัมพันธ์ระหว่างเอนทิตีเปลี่ยนแปลงไปหรือไม่ ปริมาณข้อมูลในเอนทติ จี ะเพม่ิ มากขึ้นเพยี งใด เปน็ ตน้ หลังจากที่ได้ทบทวนถึงการออกแบบฐานข้อมูลในระดับแนวคิดแล้ว จะต้องทาเอกสารซ่ึงประกอบด้วยรายละเอยี ดของการออกแบบในขั้นตอนนี้ เพราะสิ่งเหล่าน้ีจะรวมกันอยู่เป็นรายละเอียดในพจนานกุ รมข้อมลู (Data Dictionary) ในภายหลงั

ระบบฐานข้อมูล 48 ขนั้ ตอนที่ 3 การเลอื กระบบจดั การฐานขอ้ มลู สาเ หตุ ของการ เปล่ียน จากร ะบบแ ฟ้ม ข้อมูลม าใ ช้ร ะบบฐ าน ข้อมูลมั กจ ะเ กิดจากความซับซ้อนของข้อมูลขององค์กรน้ัน ๆ มีมากขึ้น การลดความซ้าซ้อนของข้อมูลรวมถึงความต้องการควบคุมข้อมูลมีมากข้ึน ปัจจัยที่ใช้ประกอบการเลือกระบบจัดการฐานข้อมูลมีมากมาย ไม่ว่าจะเป็นปัจจัยด้านเทคนิค ปัจจัยด้านเศรษฐกิจ ซึ่งท้ังนี้ขึ้นอยู่กับว่าองค์กรนั้น ๆ ให้ความสาคัญของปัจจัยใดมากกว่ากัน 1) ปจั จัยในการเลือกระบบจัดการฐานข้อมูล ในการเลือกระบบจัดการฐานข้อมูลท่ีจะนามาใช้ ควรจะคานึงถึงต้นทุนและผลประโยชน์ท่ีจะไดร้ บั วา่ คมุ้ คา่ ทีจ่ ะนามาใช้หรือไม่ ปัจจัยดา้ นตน้ ทนุ ทีค่ วรพจิ ารณาประกอบด้วย (1) ต้นทุนของซอฟต์แวร์ระบบจัดการฐานข้อมูลนั้น ๆ ว่ามีต้นทุนมากน้อยเพยี งใด (2) ต้นทุนฮาร์ดแวร์ที่จะต้องจัดมาเพิ่มเติมไม่ว่าจะเป็นการซ้ือใหม่ หรือซ้ือเพมิ่ เตมิ จากทม่ี อี ยปู่ ัจจุบัน (3) ตน้ ทุนในการบารงุ รักษา ซึ่งเป็นต้นเหตุที่เก่ียวข้องกับการบารุงรักษา และการปรับฐานข้อมลู ให้เปน็ รนุ่ ใหมใ่ นอนาคต (4) ต้นทุนด้านบุคลากร เป็นต้นทุนที่เก่ียวข้องกับบุคลากรที่จะมาทางาน ไม่ว่าจะเป็นผจู้ ัดการฐานข้อมลู หรอื เจ้าหน้าท่ีท่ีดแู ลดา้ นฐานขอ้ มลู (5) ค่าใช้จ่ายในการอบรม มีค่าใช้จ่ายในการอบรมบุคลากรสูงหรือไม่ ซึ่งโดยท่ัวไปบริษทั ท่ขี ายซอฟต์แวรจ์ ะให้บรกิ ารด้วยการจัดอบรมให้ (6) ค่าใช้จ่ายในการปฏิบัติการอ่ืน ๆ เช่น การปรับเปลี่ยนข้อมูลเดิมมาเป็นระบบใหม่ ว่ามีคา่ ใช้จา่ ยเพม่ิ ข้นึ มากน้อยเพยี งใด 2) ปัจจยั ท่ใี ชใ้ นการตัดสนิ ใจเลือกระบบจัดการฐานข้อมูล ในส่วนของปจั จยั ท่ีควรพิจารณาเพอื่ ใชต้ ัดสินใจในการเลือกระบบจดั การฐานข้อมลู มีดังนี้ (1) โครงสร้างของข้อมูล ระบบจัดการฐานข้อมูลที่จะมาใช้ขึ้นอยู่กับโครงสร้างของข้อมูลที่ออกแบบข้ึนมา เช่น ถ้าเป็นรูปแบบเชิงสัมพันธ์ ระบบจัดการฐานข้อมูลของรูปแบบเชิงสัมพันธ์ควรจะถูกเลือกมาใช้ เช่น ORACLE DB2 INGRES เป็นต้น หากโครงสร้างเป็นแบบลาดบั ขนั้ ระบบจดั การฐานข้อมูลของรูปแบบลาดับข้ันท่ีควรเลือกมาใช้ เชน่ IMS เป็นตน้

ระบบฐานขอ้ มูล 49 (2) ความคุ้นเคยของบุคลากรต่อระบบจัดการฐานข้อมูล หากบุคลากรด้านคอมพิวเตอร์ หรือผู้ใช้ในบริษัทมีความคุ้นเคยกับระบบจัดการฐานข้อมูลบางประเภท ก็อาจให้การเรยี นรู้ใหมท่ าไดเ้ ร็วขนึ้ (3) การบริการของผู้ขาย ในการทีจ่ ะเลือกซ้อื ระบบจดั การฐานข้อมูลจากผู้ขายรายใด จะต้องคานึงถึงบริการของผู้ขาย ทั้งในด้านการช่วยแก้ปัญหา การอบรม และการบริการหลงั การขาย เป็นตน้ (4) ความสามารถและประโยชน์ใช้สอยอื่น ๆ ของระบบจัดการฐานข้อมูลนอกจากสามารถช่วยในการจัดการฐานข้อมูลท่ัวไป หากระบบจัดการฐานข้อมูลน้ัน ๆ มีประโยชน์ใช้สอยอ่ืน ๆ มากก็จะเป็นประโยชน์ในการทางานมากขึ้น เช่น การสร้างรายงานใหม่ ซอฟต์แวร์ด้านการส่ือสาร การสร้างกราฟต่าง ๆ การเขียนโปรแกรมด้วยภาษาเฉพาะของระบบจัดการฐานข้อมูลน้ัน ๆ เป็นตน้ ข้นั ตอนที่ 4 การนาฐานขอ้ มลู ทอ่ี อกแบบในระดบั แนวคดิ ใหเ้ ขา้ สรู่ ะบบจดั การฐานข้อมลู ที่เลอื ก ขน้ั ตอนนี้เปน็ การแปลงส่ง (Mapping) เค้าร่างในระดับแนวคิด ให้อยู่ในรูปแบบข้อมูลของระบบจดั การฐานข้อมูลท่ไี ด้เลือกใช้ ผลของข้ันตอนนี้ก็คือการกาหนดภาษานิยามข้อมูล (DDL) ตามระบบจัดการฐานข้อมูลท่ีเลือกใช้ให้เป็นไปตามเค้าร่างของข้อมูลในระดับแนวคิดที่ได้ออกแบบในข้ันตอนท่ี 2 สมมุติว่าได้เลือกระบบจัดการฐานข้อมูลเชิงสัมพันธ์ (Relational DatabaseManagement Systems : RDBMS) เพ่ือใช้จัดการฐานข้อมูลท่ีออกแบบใหม่ ตัวอย่างการออกแบบในขน้ั ตอนน้ีประกอบด้วย 1) การกาหนดโครงสร้างของฐานข้อมูล ขั้นตอนน้ีเป็นการกาหนดโครงสร้างของรีเลชันหรือตาราง ซึ่งเอนทิตีเป็นคาท่ีใช้แทนสิ่งใด สิ่งหน่ึงท่ีกล่าวถึงเมื่อทาการออกแบบในระดับแนวคิด ในขณะที่คาว่ารีเลชันหรือตารางเป็นคาที่ใช้แทนเอนทิตี เมื่อมีการแปลงเค้าร่างในระดับแนวคิดเปน็ รปู แบบฐานขอ้ มูลเชงิ สมั พันธ์ (Relational Object) ในข้ันตอนนีเ้ ปน็ การสร้างรเี ลชนั โดยมีการกาหนดช่ือรีเลชัน แอททริบิวต์ คีย์หลัก คีย์นอกประเภทของข้อมูลที่จัดเก็บ ความยาวของข้อมูล ฯลฯ ตามที่ได้ออกแบบไว้ในขั้นตอนที่ 2 ตัวอย่างระบบจัดการฐานข้อมูลเชิงสัมพันธ์ มี SQL ที่สามารถใช้คาส่ัง CREATE TABLE ในการสร้างรเี ลชนั ตามรายละเอียดท่ถี ูกออกแบบมา 2) การระบุข้อจากัดกฎเกณฑ์ที่ใช้กับฐานข้อมูล และการควบคุมความปลอดภัยของข้อมูล ขั้นตอนน้ีเป็นการใช้คาส่ังในระบบจัดการฐานข้อมูลกาหนดข้อจากัดและกฎเกณฑ์ที่ใช้กับ

ระบบฐานขอ้ มูล 50แอททริบิวต์ต่าง ๆ เช่น คีย์หลัก คีย์นอก โดเมนของแอททริบิวต์ ข้อจากัดเฉพาะของกฎเกณฑ์ในการปฏิบัติงาน รวมถึง การควบคุมการเรียกใช้ การเพิ่มเติม การแก้ไข การให้สิทธ์ิในการใช้ข้อมูลของผู้ใช้ในระบบ นอกจากน้ี ยังต้องคานึงถึงการควบคุมความปลอดภัยของข้อมูลว่าหากระบบล้มเหลวจะมกี ารกคู้ นื อยา่ งไร การปอ้ งกนั การเกดิ ภาวะพร้อมกนั ว่ามวี ิธกี ารอย่างไรบา้ ง เมื่อข้ันตอนเหล่าน้ีเสร็จส้ินลง ระบบจัดการฐานข้อมูลจะทาการสร้างรายละเอียดต่าง ๆของฐานข้อมูลท่ีถูกออกแบบ เช่น ฐานข้อมูลนั้น ๆ มีรีเลชันอะไร แต่ละรีเลชันประกอบด้วยแอททริบิวต์อะไร ผู้ใช้คนใดมีสิทธ์ิใช้ข้อมูลในระบบได้มากน้อยเพียงใด เป็นต้น โดยรายละเอียดเหลา่ นี้จะถกู เก็บไว้ในพจนานุกรมขอ้ มลู (Data Dictionary) ซงึ่ เปรียบเสมือนคู่มือ แสดงรายละเอียดของระบบทผี่ ้บู ริหารฐานข้อมูลหรอื ผ้ใู ช้สามารถเรียกดไู ด้ ขั้นตอนท่ี 5 การออกแบบฐานขอ้ มูลในระดบั กายภาพ การออกแบบฐานข้อมูลในระดับกายภาพเป็นการกาหนดถึงโครงสร้างท่ีใช้ในการเก็บขอ้ มูลจริง วิธีเรยี กใช้ข้อมูล (Access Approach) จากฐานข้อมูล การปรับฐานข้อมูลหรือระบบงาน(Tuning) ท้ังนี้เพ่ือให้การจัดการฐานข้อมูลเป็นไปอย่างมีประสิทธิภาพ โดยทั่วไปผู้ออกแบบในขน้ั ตอนนี้ควรจะตอ้ งออกแบบร่วมกบั ผจู้ ัดการฐานข้อมลู การออกแบบฐานข้อมูลในระดับกายภาพน้ีจะทาได้จากัดมากขึ้น ทั้งนี้ขึ้นอยู่กับว่าระบบจัดการฐานข้อมูลที่ถูกเลือกมาใช้ว่ามีทางเลือกให้เลือกออกแบบในลักษณะใดบ้าง ตัวอย่าง ระบบจัดการฐานข้อมูลหน่ึง ๆ มีการกาหนดถึงทางเลือกท่ีจะใช้ในการจัดเก็บข้อมูล และวิธีเรียกใช้ข้อมูลเช่น การหาเลขท่ีอยู่แบบแฮช (Hashing) การสแกน (Scanning) หรือคลัสเตอร์ (Clustering)การเลอื กทางเลือกใดทางเลือกหนึง่ อาจจะต้องคานึงถงึ ปัจจัยตา่ ง ๆ ดังตอ่ ไปน้ี คือ 1) ระยะเวลาท่ีได้ผลกลับมา (Execution Time) เป็นช่วงเวลาท่ีรายการหน่ึง ๆ ได้ถกู สง่ ไปประมวลผลและไดผ้ ลของขอ้ มลู กลับคืนมา 2) การใช้เนื้อท่ีในการจัดเก็บข้อมูล (Space Utilization) เป็นจานวนเน้ือท่ีท่ีใช้ในการจัดเกบ็ ขอ้ มูลวา่ มีมากเพยี งใด 3) จานวนรายการท่ีทาได้ต่อนาที หรือต่อช่วงเวลาหนึ่ง ๆ เป็นจานวนรายการท่ีประมวลผลเสรจ็ ในหนงึ่ นาทขี องฐานข้อมลู น้นั ๆ โดยเฉพาะช่วงที่มปี ริมาณของการประมวลผลมาก ๆ 4) โครงสร้างที่ใช้ในการจัดเก็บข้อมูล (Data Storage Structure) เพื่อทาให้สามารถเรียกใชไ้ ด้อย่างมีประสิทธิภาพ

ระบบฐานขอ้ มลู 51 นอกจากนี้ในการออกแบบฐานข้อมูลในระดับกายภาพ อาจจะมีการนาเทคนิคการปรับฐานข้อมูล (Tuning) มาใชเ้ พ่อื ชว่ ยใหก้ ารทางานในระบบมปี ระสิทธิภาพมากยิ่งขึ้น ตัวอย่าง เทคนิคในการปรับโครงสร้าง การจัดเก็บข้อมูลของรีเลชันหรือตารางท่ีมีข้อมูลมาก และเป็นรีเลชันที่ไม่ค่อยจะมีการลบหรือเพิ่มเติมข้อมูลมากนัก รวมถึงเป็นรีเลชันท่ีมีการจัดเรียง ซึ่งการเรียกใช้ข้อมูลเป็นการเรยี กใช้ค่าของข้อมูลที่ถูกจดั เรยี งไว้เป็นลกั ษณะชว่ งของข้อมูลหนง่ึ ถึงอีกชว่ งข้อมูลหนึ่งท่ีให้จัดเรียง(เช่น ORDER BY หรอื GROUP BY ฯลฯ) ลักษณะของรีเลชันน้ีจะนิยมใช้โครงสร้างในการจัดเก็บข้อมูลแบบคลสั เตอร์ (Clustering) เพ่ือใหเ้ รียกใชข้ ้อมลู ได้รวดเร็ว ขนั้ ตอนท่ี 6 การนาฐานขอ้ มลู ไปใชแ้ ละประเมนิ ผล หลังจากที่การออกแบบฐานข้อมูลในระดับกายภาพได้เสร็จส้ินลง คาสั่งต่าง ๆ ท่ีใช้ในการออกแบบ (DDL) จะถูกแปล (Compile) โดยระบบจัดการฐานข้อมูล เพื่อกาหนดเค้าร่างของฐานข้อมูล หลังจากน้นั ก็จะทาการบรรจขุ อ้ มูล (Load) ลงในฐานข้อมลู ใหม่น้ี การทางานหรือประมวลผลชุดคาสั่งงานของรายการต่าง ๆ ก็จะเร่ิมข้ึนซึ่งผลจากการทางานกจ็ ะต้องคอยประเมนิ และตรวจสอบเพ่ือปรับปรุงแก้ไขหากยังมีข้อบกพร่องสรุป การพัฒนาฐานข้อมูล ประกอบด้วย การวางแผน การกาหนดขอบเขตของฐานข้อมูลการรวบรวมและวิเคราะห์ความต้องการ เพ่ือนามาออกแบบฐานข้อมูล ซ่ึงการออกแบบฐานข้อมูลสามารถแบ่งการออกแบบได้ 3 ระดับ ได้แก่ 1. การออกแบบฐานข้อมูลในระดับแนวคิด เป็นการออกแบบฐานข้อมูลที่เน้นการออกแบบข้อมูล (Data Driven) ข้ันตอนนี้เป็นการออกแบบถึงข้อมูลท่ีต้องการ และความสัมพันธ์ระหว่างข้อมูล 2. การออกแบบฐานข้อมูลในระดับตรรกะ เป็นการนาผลจากการออกแบบในระดบั แนวคิด มาวิเคราะห์และออกแบบโดยการแปลงให้เป็นรีเลชันที่ประกอบด้วยแอททริบิวต์ รวมถึงการระบุข้อกาหนดต่าง ๆ ให้กับรีเลชัน 3. การออกแบบฐานข้อมูลในระดับกายภาพ เป็นการนาข้อมูลท่ีออกแบบในระดับตรรกะมากาหนดโครงสร้างข้อมูล การจัดเก็บ วิธีการเข้าถงึ ข้อมูล รวมถงึ การจัดการด้านระบบความปลอดภัย เม่ือออกแบบฐานข้อมูลเรียบร้อยแล้ว ก็จะดาเนินการพิจารณารายละเอียดของการออกแบบระบบประยุกต์ใช้งาน การเลือกระบบจัดการฐานข้อมลู การทดสอบและนาระบบไปใช้ และการบารุงรักษา


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook