วันจันทร์ที่ 15 สิงหาคม พ.ศ. 2554

ระบบฐานข้อมูล

ลำดับชั้นของข้อมูล(Hierarchical of Data)
          โดยทั่วไปข้อมูลจะอยู่ในลักษณะที่เป็นลำดับชั้นโดยเริ่มจากหน่วยของข้อมูลที่มีขนาดเล็กสุดที่คอมพิวเตอร์ใช้ในการประมวลผล(bit) ไปจนถึงระบบฐานข้อมูลโดยสามารถเรียงลำดับชั้นของข้อมูลจากเล็กไปถึงขนาดใหญ่ได้ดังนี้ 

          บิต(Bit) คือ หน่วยของข้อมูลที่เล็กที่สุด ในแต่ละบิตจะเป็นตัวเลขในระบบเลขฐานสอง ประกอบด้วย 0 และ 1 ซึ่งนำมาใช้แทน ระหว่างสองสถานะ เช่น จริง-เท็จ เปิด-ปิด เป็นต้น เนื่องจากคอมพิวเตอร์ทำงานโดยการส่งกระแสไฟฟ้าเข้ามายังเครื่องคอมพิวเตอร์ ซึ่งอาจจะเป็น เปิด(on) หรือ ปิด(off),แรงดันไฟฟ้าสูง(High-voltage) หรือ แรงดันไฟฟ้าต่ำ(Low-voltage) จึงนำเลข 0 และ 1 มาแทนสถานะดังกล่าวในการประมวลผลในคอมพิวเตอร์

          ไบต์(Byte)หรืออักขระ(Character)คือการนำเอาบิตหลายๆบิตมาเรียงกันเป็นสายเพื่อแสดงแทนข้อมูล   แต่เนื่องจากคอมพิวเตอร์
เข้าใจเพียงเลข 0 และเลข 1 เท่านั้นถ้าต้องการให้คอมพิวเตอร์รูปจักอักขระตัวอักษร A,B….,Z จะต้องมีการเอาเลข 0 และเลข 1 มาเรียงต่อกันเป็นรหัสแทนอักขระ โดยปกติ 1 ตัวอักขระจะมีความยาว 8 บิต ซึ่งเท่ากับ 1 ไบต์ จำนวนบิตที่นำมาเรียงต่อกันเป็นไบต์นี้แตกต่างกันไปตามรหัสแทนข้อมูล รหัสแทนข้อมูลที่ใช้กันแพร่หลายมี 2 ระบบคือ รหัสเอบซีดิก (EBCDIC) และรหัสแอสกี (ASCII) ใช้ 8 บิต รวมกันเป็น 1 ไบต์ โดย 1 ไบต์ จะใช้แทนอักขระ 1 ตัว

          เขตข้อมูล(Field)คือกลุ่มของอักขระที่สัมพันธ์กันตั้งแต่1ตัวขึ้นไปที่นำมารวมกันแล้วแสดงลักษณะหรือความหมายอย่างใดอย่างหนึ่ง ตัวอย่างของเขตข้อมูล เช่น ชื่อ , ที่อยู่, หมายเลขบัตรประจำตัว เป็นต้น  เขตข้อมูลแต่ละเขตข้อมูลยังแยกออกเป็นประเภทข้อมูล  ซึ่งจะบ่งบอกว่าในเขตข้อมูลนั้นบรรจุข้อมูลประเภทใดไว้ สามารถแยกประเภทของเขตข้อมูลได้เป็น 3 ประเภท ตัวอย่างของเขตข้อมูล เช่น ชื่อ , ที่อยู่, หมายเลขบัตรประจำตัว เป็นต้น

          ระเบียน(Record) เป็นกลุ่มของเขตข้อมูลที่สัมพันธ์กัน ตัวอย่างของระเบียน เช่น ชื่อและที่อยู่และหมายเลขบัตรประจำตัว เป็นต้น

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

          ฐานข้อมูล(Database)เป็นกลุ่มของแฟ้มข้อมูลที่สัมพันธ์กันตัวอย่างเช่นฐานข้อมูลของบริษัท ประกอบด้วยแฟ้มข้อมูลของ
พนักงานทั้งพนักงานเก่าและพนักงานที่ทำงานอยู่ในปัจจุบันในทุกแผนกของบริษัท ซึ่งพนักงานแต่ละคนก็จะเกี่ยวข้องกับแฟ้มต่าง ๆ
เช่น การจ่ายเงินเดือน , เงินบำเหน็จบำนาญ เป็นต้น ฐานข้อมูลมีทั้งฐานข้อมูลขนาดเล็กที่เก็บและใช้งานบนเครื่อง
คอมพิวเตอร์ส่วนตัว ไปจนถึงฐานข้อมูลขนาดใหญ่ ที่เป็นแบบออนไลน์(online)

         
 รู้เบื้องต้นเกี่ยวกับฐานข้อมูล
                   (Introduction to Database)
 
ระบบแฟ้มข้อมูล(File System)
          การจัดเก็บข้อมูลด้วยระบบแฟ้มข้อมูลเป็นรูปแบบการจัดเก็บข้อมูลแบบดั้งเดิมที่นิยมใช้กันเมื่อคอมพิวเตอร์ถูกใช้เป็นเครื่องมือใน
การจัดเก็บและประมวลผลสารสนเทศในยุคเริ่มต้น  การศึกษารูปแบบการประมวลผลแบบแฟ้มข้อมูลจะทำให้เห็นถึงข้อบกพร่องต่างๆ ที่เป็นสาเหตุให้การจัดเก็บข้อมูลแบบฐานข้อมูลได้รับความนิยมขึ้นมาแทนที่การจัดเก็บข้อมูลแบบแฟ้มข้อมูล

ข้อจำกัดของการประมวลผลแบบแฟ้มข้อมู

          
ในการประมวลผลข้อมูลแบบแฟ้มข้อมูลก่อให้เกิดข้อจำกัดในการปัญหาด้านต่าง ๆ ดังต่อไปนี้
ข้อมูลถูกแบ่งและแยกไว้คนละไฟล์

          เมื่อข้อมูลถูกแบ่งและแยกให้อยู่คนละไฟล์ การเข้าถึงข้อมูลจึงเป็นไปได้ยาก  ยกตัวอย่างเช่นถ้าเราต้องการแสดงรายการบ้าน
ที่ตรงกับความต้องการของลูกค้า อันดับแรกต้องทำการสร้างแฟ้มชั่วคราวซึ่งมีข้อมูลลูกค้าที่มีความต้องการสิ่งปลูกสร้างประเภท”บ้าน”
โดยดึงข้อมูลมาจากแฟ้มลูกค้าที่ต้องการเช่า หลังจากนั้นทำการค้นหาข้อมูลสิ่งปลูกสร้างประเภท”บ้าน”ในแฟ้มสิ่งปลูกสร้างที่ให้เช่า
และมีค่าเช่า/เดือนไม่เกินค่าเช่าสูงสุดที่ลูกค้ากำหนด สำหรับระบบแฟ้มข้อมูลนี้ทำให้การประมวลผลดังกล่าวทำได้ยาก  ผู้พัฒนาโปรแกรมต้องประมวลผลแฟ้มข้อมูลจากทั้งสองแฟ้มในเวลาเดียวกันและคำนึงถึงความถูกต้องของข้อมูลด้วย 
ข้อมูลมีความซ้ำซ้อนกัน
          เนื่องจากแต่ละฝ่ายก็จะมีระบบแฟ้มข้อมูลที่ประมวลผลงานของตนเอง จึงทำให้ไม่สามารถควบคุมความซ้ำซ้อนของข้อมูลได
้  ยกตัวอย่างเช่น พิจารณารูปที่ 1.5 แฟ้มข้อมูลที่ใช้ในฝ่ายขาย และแฟ้มข้อมูลของฝ่ายประสานงาน  จะเห็นว่ามีแฟ้มสิ่งปลูกสร้างที่ให้เช่าและแฟ้มลูกค้าซ้ำซ้อนกันในทั้งฝ่ายขายและฝ่ายประสานงาน   การที่ไม่มีการควบคุมความซ้ำซ้อนของข้อมูลทำให้เกิด
มีความขึ้นต่อกันของข้อมูล
          โครงสร้างและการจัดเก็บข้อมูลของแฟ้มข้อมูลและรายการข้อมูลต่างๆถูกกำหนดไว้ในโปรแกรมประยุกต์  หมายความว่าการแก้ไขโครงสร้างแฟ้มข้อมูลทำได้ยาก  ตัวอย่างเช่น ต้องการเพิ่มขนาดข้อมูลของฟิลด์ “ที่อยู่” ของแฟ้มสิ่งปลูกสร้างที่ให้เช่า จากขนาด 50 ตัวอักษร ให้เพิ่มขึ้นเป็น 60 ตัวอักษร ซึ่งดูเหมือนเป็นการเปลี่ยนแปลงที่ไม่ยาก แต่ในทางปฏิบัติแล้วมีขั้นตอนที่ยุ่งยากดังนี้
  • เปิดแฟ้มสิ่งปลูกสร้างขึ้นมาอ่าน
  • เปิดแฟ้มชั่วคราวเพื่อสร้างโครงสร้างใหม่
  • อ่านรายการข้อมูลจากแฟ้มต้นฉบับ  แปลงข้อมูลไปสู่โครงสร้างใหม่และเขียนข้อมูลลงในแฟ้มชั่วคราว  ทำซ้ำกันจนครบทุกรายการข้อมูลในแฟ้มต้นฉบับ
  • ลบแฟ้มข้อมูลสิ่งปลูกสร้างที่ให้เช่าซึ่งเป็นแฟ้มต้นฉบับ
  • เปลี่ยนชื่อแฟ้มชั่วคราวเป็น “สิ่งปลูกสร้างที่ให้เช่า” แทน

    รูปแบบข้อมูลไม่ตรงกัน
              เนื่องจากโครงสร้างข้อมูลจะถูกฝังไว้ในส่วนของโปรแกรมประยุกต์ ทำให้โครงสร้างแฟ้มข้อมูลขึ้นอยู่กับภาษาการ
    เขียนโปรแกรมของโปรแกรมประยุกต์  ตัวอย่างเช่น โครงสร้างของแฟ้มข้อมูลที่สร้างด้วยภาษา COBOL ก็จะแตกต่างจากโครงสร้างแฟ้มที่สร้างด้วยภาษา C  จากโครงสร้างที่แตกต่างกันทำให้การใช้ข้อมูลร่วมกันทำได้ยาก

ฐานข้อมูล(Database)
          จากข้อจำกัดต่างๆ ที่เกิดจากการประมวลผลแบบแฟ้มข้อมูลที่กล่าวไว้ในหัวข้อที่แล้ว เป็นผลมาจากปัจจัย 2 อย่างดังนี้
  1. การนิยามข้อมูลถูกฝังรวมไว้กับโปรแกรมประยุกต์ แทนที่จะถูกแยกเก็บไว้ต่างหากอย่างอิสระ
  2. ไม่มีการควบคุมการเข้าถึงข้อมูลและการจัดการข้อมูล นอกเหนือจากที่กำหนดเอาไว้ในโปรแกรมประยุกต์
          เพื่อให้ประสิทธิภาพในการประมวลผลงานมีประสิทธิภาพมากขึ้น จึงมีการวิธีการใหม่ที่เรียกว่า ฐานข้อมูล(Database) ขึ้นมา  ในส่วนนี้จะกล่าวถึงความหมายของฐานข้อมูลและระบบการจัดการฐานข้อมูล(Database Management System : DBMS) และส่วนประกอบที่สำคัญในระบบการจัดการฐานข้อมูล
ระบบการจัดการฐานข้อมูล
          ระบบการจัดการฐานข้อมูล(Database Management System : DBMS) คือ ซอฟต์แวร์ที่ทำงานประสานกับผู้ใช้ เพื่อให้ผู้ใช้สามารถกำหนด สร้าง  บำรุงรักษา และควบคุมการใช้งานข้อมูลในฐานข้อมูล  โดยทั่วไปมีลักษณะดังนี้
  • ผู้ใช้สามารถนิยามฐานข้อมูล ผ่านส่วนที่เรียกว่า “ภาษาในการนิยามข้อมูล(Data Definition  : DDL)” ซึ่งให้ผู้ใช้สามารถกำหนดชนิดข้อมูลและโครงสร้างและข้อกำหนดต่างๆ ให้กับข้อมูลที่จะเก็บในฐานข้อมูล
  • ผู้ใช้สามารถเพิ่ม  แก้ไข  ลบ  และค้นคืนข้อมูลจากฐานข้อมูลได้ ผ่านส่วนที่เรียกว่า “ภาษาในการจัดการข้อมูล(Data Manipulation Language : DML) เนื่องจากมีคลังส่วนกลางที่เก็บข้อมูลทั้งหมดและส่วนอธิบายข้อมูล ซึ่งทำให้ DML มีส่วนที่สามารถสอบถามข้อมูลจากฐานข้อมูลได้ เรียกว่า “ภาษาสอบถามข้อมูล(Query language)”   
  • สามารถควบคุมการเข้าถึงข้อมูลในฐานข้อมูล เช่น
             ระบบรักษาความปลอดภัย ซึ่งจะช่วยป้องกันไม่ผู้ที่ไม่มีสิทธ์เข้าถึงข้อมูลในฐานข้อมูล
             ระบบรักษาความคงสภาพ ซึ่งจะช่วยรักษาความต้องกันของข้อมูลที่เก็บไว้
             ระบบควบคุมภาวะพร้อมกัน ซึ่งจะยอมให้สามารถใช้ข้อมูลร่วมกันได้
             ระบบกู้คืนข้อมูล ซึ่งจะช่วยกู้ข้อมูลที่เสียหายจากความเสียหายที่เกิดจากซอฟต์แวร์และฮาร์ดแวร์ให้คงสภาพเดิม
             มีส่วนอธิบายข้อมูลในฐานข้อมูลที่ให้ผู้ใช้สามารถใช้งานได้

    การประมวลผลด้วยฐานข้อมูล
 องค์ประกอบของการใช้งานระบบการจัดการฐานข้อมูล

          ในการใช้งานระบบการจัดการฐานข้อมูลมีองค์ประกอบ 5 ส่วน ได้แก่ ฮาร์ดแวร์ , ซอฟต์แวร์ , ข้อมูล ,ระเบียบวิธีการและบุคคลากร



ผู้ที่เกี่ยวข้องกับการใช้งานฐานข้อมูล
          ในส่วนนี้จะกล่าวถึงบทบาทหน้าที่ต่างๆ ของคนที่มีส่วนเกี่ยวข้องในการใช้งานฐานข้อมูล ซึ่งคน ถือเป็นองค์ประกอบส่วนที่ 5 แบ่งออกได้เป็น 4 ประเภทหลัก ดังนี้

ผู้บริหารฐานข้อมูล(Database Administrator : DBA)         ผู้บริหารฐานข้อมูลมีหน้าที่รับผิดชอบในการจัดการข้อมูลในฐานข้อมูล ประกอบด้วย การวางแผนฐานข้อมูล , พัฒนาและรักษามาตรฐาน , นโยบายและระเบียบวิธีการ และการออกแบบฐานข้อมูลระดับแนวคิด/ตรรกะ 
นอกจากนี้ยังมีหน้าที่จัดการฐานข้อมูลในระดับกายภาพ ประกอบด้วย การออกแบบและดำเนินการฐานข้อมูลในระดับกายภาพ ควบคุมความปลอดภัยและความคงสภาพ  บำรุงรักษาการทำงานของระบบ และรักษาประสิทธิภาพในการใช้งานโปรแกรมของผู้ใช้  จะเห็นได้ว่าผู้บริหารฐานข้อมูลต้องมีความรู้ในรายละเอียดของระบบการจัดการฐานข้อมูลที่ใช้และองค์ประกอบในการทำงาน

นักออกแบบฐานข้อมูล(Database Designer)
          
ในการออกแบบฐานข้อมูล เราสามารถแบ่งนักออกแบบฐานข้อมูลออกได้ 2 ประเภท ได้แก่ นักออกแบบฐานข้อมูลระดับตรรกะ และนักออกแบบฐานข้อมูลระดับกายภาพ

นักพัฒนาโปรแกรม(Application Developers)          นักพัฒนาโปรแกรมมีหน้าที่เขียนโปรแกรมตามที่นักวิเคราะห์ระบบ(System analyst) แต่ละโปรแกรมประกอบด้วยคำสั่งงานที่ม
ีการร้องขอให้ระบบการจัดการฐานข้อมูลประมวลผลที่อยู่ในฐานข้อมูล ซึ่งประกอบด้วย การค้นคืนข้อมูล การเพิ่ม การปรับปรุง และการลบข้อมูล  โปรแกรมอาจเขียนด้วยภาษาการเขียนโปรแกรมยุคที่ 3 หรือ ยุคที่ 4

ผู้ใช้(End user)           ผู้ใช้มีส่วนเกี่ยวข้องกับฐานข้อมูลในฐานะที่เป็นผู้ที่ใช้งานโปรแกรมประยุกต์เพื่อทำงานของตนเอง ซึ่งโปรแกรมนี้จะมีการทำงาน
ที่เกี่ยวข้องกับฐานข้อมูล

http://www.aegkaluk.ob.tc/lesson%201.html#b

ไม่มีความคิดเห็น:

แสดงความคิดเห็น