วันพุธที่ 18 เมษายน พ.ศ. 2555

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


            เป็นวิธีการจัดเก็บข้อมูลในคอมพิวเตอร์เพื่อให้สามารถใช้งานได้อย่างมีประสิทธิภาพการเลือกโครงสร้างข้อมูลนั้นโดยส่วนใหญ่แล้วจะเริ่มต้นจากการเลือกประเภทข้อมูลอย่างย่อโครงสร้างข้อมูลที่ออกแบบเป็นอย่างดีจะสามารถรองรับการประมวลผลที่หนักหน่วงโดยใช้ทรัพยากรที่น้อยที่สุดเท่าที่จะเป็นไปได้ทั้งในแง่ของเวลาและหน่วยความจำ
            โครงสร้างข้อมูลแต่ละแบบจะเหมาะสมกับงานที่แตกต่างกัน และโครงสร้างข้อมูลบางแบบก็ออกแบบมาสำหรับบางงานโดยเฉพาะ
            แนวความคิดในเรื่องโครงสร้างข้อมูลนี้ส่งผลกับการพัฒนาวิธีการมาตรฐานต่างๆในการออกแบบและเขียนโปรแกรมหลายภาษาโปรแกรมนั้นได้พัฒนารวมเอาโครงสร้างข้อมูลนี้ไว้เป็นส่วนหนึ่งของระบบโปรแกรม เพื่อประโยชน์ในการใช้ซ้ำ
                แฟ้มข้อมูล” (file) หมายถึงข้อมูลสารสนเทศหรือข้อมูลทั้งหมดที่เก็บไว้ในสื่อที่มีคุณสมบัติเป็นแม่เหล็กไม่ว่าจะเป็นจานบันทึกธรรมดาหรือจานแข็ง (hard disk) ก็ตามข้อสนเทศที่นำไปเก็บนั้นจะถูกนำไปเก็บไว้เป็นเรื่องๆ ไป อาจจะเป็นโปรแกรมข้อมูล หรือภาพ (graphics) ก็ได้ แต่ละเรื่องต่างก็ต้องมีชื่อเป็นของตนเองที่ต้องไม่ซ้ำกัน

1.รูปแบบของการจัดระเบียบข้อมูล
                รูปแบบของการจัดระเบียบของข้อมูล ซึ่งมีอยู่หลายรูปแบบ  ประกอบด้วยโครงสร้างพื้นฐานที่ลำดับจากหน่วยที่เล็กที่สุดไปยังหน่วยที่ใหญ่ขึ้นตามลำดับต่อไปนี้
1.1 บิท (Bit : Binary Digit) คือหน่วยของข้อมูลที่เล็กที่สุดที่เก็บอยู่ในหน่วยความจำภายในคอมพิวเตอร์ ซึ่ง Bit จะแทนด้วยตัวเลขหนึ่งตัว คือ 0 หรือ 1 อย่างใดอย่างหนึ่ง เรียกตัวเลข 0 หรือ 1 ว่าเป็น บิท1 บิท
1.2 ไบท์ (Byte) คือหน่วยของข้อมูลที่นำบิทหลายๆบิทมารวมกัน แทนตัวอักษรแต่ละตัว เช่น A, B, …, Z, 0, 1, 2, … ,9 และสัญลักษณ์พิเศษอื่นๆ เช่น $, &, +, -, *, / ฯลฯโดยตัวอักษร 1 ตัวจะแทนด้วยบิท7 บิท หรือ 8 บิทซึ่งตัวอักษรแต่ละตัวจะเรียกว่า ไบท์ เช่น ตัว A เมื่อเก็บอยู่ในคอมพิวเตอร์จะเก็บเป็น 1000001 ส่วนตัว B จะเก็บเป็น 1000010 เป็นต้น
1.3 เขตข้อมูล (Field) คือ หน่วยของข้อมูลที่เกิดจากการนำตัวอักขระหลายๆตัวมารวมกัน เป็นคำที่มีความหมาย
1.4 ระเบียน (Record) คือ หน่วยของข้อมูลที่มีการนำเขตข้อมูลหลายๆ เขตข้อมูล ที่มีความสัมพันธ์กันมารวมกัน หรือค่าของข้อมูลในแต่ละเขตข้อมูล
1.5 แฟ้มข้อมูล (File) คือ หน่วยของข้อมูลที่มีการนำระเบียนหลายๆ ระเบียนที่มีความสัมพันธ์กันมารวมกัน
1.6 ฐานข้อมูล (Database) คือ หน่วยของข้อมูลที่มีการนำแฟ้มข้อมูลหลายๆ แฟ้มข้อมูล ที่มีความสัมพันธ์กันมารวมกัน

 2.โครงสร้างแฟ้มข้อมูล
โดยปกติแฟ้มข้อมูลจะถูกเก็บไว้ในหน่วยความจำสำรอง (secondary storage) เช่น ฮาร์ดดิสก์เนื่องจากมีความจุข้อมูลสูงและสามารถเก็บได้ถาวรแม้จะปิดเครื่องไปซึ่งการจัดเก็บนี้จะต้องมีวิธีกำหนดโครงสร้างโดยมีวัตถุประสงค์เพื่อให้การจัดเก็บและเข้าถึงข้อมูลมีความรวดเร็ว ถูกต้องและเหมาะสมกับความต้องการการเข้าถึงและค้นคืนข้อมูลจะอาศัยคีย์ฟิลด์ในการเรียกค้นด้วยเสมอการจัดโครงสร้างของแฟ้มข้อมูลอาจจะแบ่งได้เป็นลักษณะดังนี้
การจัดการโครงสร้างแฟ้มข้อมูลมีปัจจัยที่ต้องพิจารณาในการเลือกโครงสร้าง ได้แก่
-                    ปริมาณข้อมูล ความถี่ในการดึงข้อมูล ความถี่ในการปรับปรุงข้อมูล จำนวนครั้งที่อ่านข้อมูลจากหน่วยความจำสำกรองต่อการดึงข้อมูล
การจัดโครงสร้างข้อมูลแบบต่างๆ
-                    แฟ้มลำดับ (sequential file)
-                    แฟ้มสุ่ม ( direct file หรือ hash file)
-                    แฟ้มดรรชนี (indexed file)
-                    แฟ้มลำดับดรรชนี (indexed sequential file)
2.1โครงสร้างของแฟ้มข้อมูลแบบเรียงลำดับ (Sequential File Structure)
            เป็นโครงสร้างของแฟ้มข้อมูลชนิดพื้นฐานที่สามารถใช้งานได้ง่ายที่สุดเนื่องจากมีลักษณะการจัดเก็บข้อมูลแบบเรียงลำดับเรคคอร์ดต่อเนื่องกันไปเรื่อยๆการอ่านหรือค้นคืนข้อมูลจะข้ามลำดับไปอ่านตรงตำแหน่งใดๆที่ต้องการโดยตรงไม่ได้เมื่อต้องการอ่านข้อมูลที่เรคคอร์ดใดๆโปรแกรมจะเริ่มอ่านตั้งแต่เรคคอร์ดแรกไปเรื่อยๆจนกว่าจะพบเรคคอร์ดที่ต้องการ ก็จะเรียกค้นคืนเรคคอร์ดนั้นขึ้นมา
            การใช้ข้อมูลเรียงลำดับนี้จึงเหมาะสมกับงานประมวลผลที่มีการอ่านข้อมูลต่อเนื่องกันไปเรื่อยๆตามลำดับและปริมาณครั้งละมากๆ
            แฟ้มข้อมูลแบบนี้ถ้าเป็นเครื่องคอมพิวเตอร์ระดับเมนเฟรมขนาดใหญ่ก็จะจัดเก็บอยู่ในอุปกรณ์ประเภทเทปแม่เหล็ก (magnetic tape) ซึ่งมีการเข้าถึงแบบลำดับ (Sequential access) เวลาอ่านข้อมูลก็ต้องเป็นไปตามลำดับด้วยคล้ายกับการเก็บข้อมูลเพลงลงบนเทปคาสเซ็ต
2.2โครงสร้างของแฟ้มข้อมูลแบบสุ่ม (Direct/Random File Structure)
             เป็นลักษณะของโครงสร้างแฟ้มข้อมูลที่เข้าถึงได้โดยตรงเมื่อต้องการอ่านค่าเรคคอร์ดใดๆสามารถทำการเลือกหรืออ่านค่านั้นได้ทำให้การเข้าถึงข้อมูลได้รวดเร็วกว่าปกติแล้วจะมีการจัดเก็บในสื่อที่มีลักษณะการเข้าถึงได้โดยตรงประเภทจานแม่เหล็ก เช่น ดิสเก็ต, ฮาร์ดดิสก์หรือ CD-ROM เป็นต้น
2.3โครงสร้างของแฟ้มข้อมูลแบบลำดับเชิงดรรชนี (Index Sequential File Structure)
            เป็นลักษณะของโครงสร้างแฟ้มข้อมูลที่อาศัยกระบวนการที่เรียกว่า ISAM (Index Sequential Access Method ) ซึ่งรวมเอาความสามารถในการเข้าถึงข้อมูลแบบสุ่มและแบบเรียงตามลำดับเข้าไว้ด้วยกัน การจัดโครงสร้างแฟ้มข้อมูลวิธีนี้ข้อมูลจะถูกจัดเก็บเรียงกันตามลำดับไว้บนสื่อแบบสุ่ม เช่น ฮาร์ดดิสก์และการเข้าถึงข้อมูลจะทำผ่านแฟ้มข้อมูลลำดับเชิงดรรชนี (Index Sequential File) ซึ่งทำหน้าที่ช่วยชี้และค้นหาข้อมูลที่ต้องการได้สามารถทำงานได้ยืดหยุ่นกว่าวิธีอื่นๆโดยเฉพาะกับกรณีที่ข้อมูลในการประมวลผลมีจำนวนมากๆ โครงสร้างแฟ้มข้อมูลแบบนี้จะมีหลักการทำงานคล้ายกับรูปแบบดรรชนีท้ายเล่ม ซึ่งทำให้ง่ายและสะดวกมากยิ่งขึ้น
ตารางเปรียบเทียบโครงสร้างของแฟ้มข้อมูล
โครงสร้างแฟ้ม
ข้อดี
ข้อเสีย
สื่อที่ใช้เก็บ
1.               แบบเรียงลำดับ
- เสียค่าใช้จ่ายน้อยและใช้งานได้ง่ายกว่าวิธีอื่นๆ
- เหมาะกับงานประมวลผลที่มีการอ่านข้อมูลแบบเรียงลำดับและในปริมาณมาก
- สื่อที่ใช้เก็บเป็นเทปซึ่งมีราคาถูก
- การทำงานเพื่อค้นหาข้อมูลจะต้องเริ่มทำตั้งแต่ต้นไฟล์เรียงลำดับไปเรื่อย  จนกว่าจะหาข้อมูลนั้นเจอ  ทำให้เสียเวลาค่อนข้างมาก
- ข้อมูลที่ใช้ต้องมีการจัดเรียงลำดับก่อนเสมอ
- ไม่เหมาะกับงานที่ต้องแก้ไข  เพิ่ม  ลบข้อมูลเป็นประจำ  เช่นงานธุรกรรมออนไลน์
เทปแม่เหล็กเช่น เทปคาสเซ็ต
2.    แบบสุ่ม
- สามารถทำงานได้เร็ว  เพราะมีการเข้าถึงข้อมูลเรคคอร์ดแบบเร็วมาก  เพราะไม่ต้องเรียงลำดับข้อมูลก่อนเก็บลงไฟล์
- เหมาะสมกับการใช้งานธุรกรรมออนไลน์ หรืองานที่ต้องการแก้ไข  เพิ่ม  ลบรากการเป็นประจำ
- ไม่เหมาะกับงานประมวลผลที่อ่านข้อมูลในปริมาณมาก
- การเขียนโปรแกรมเพื่อค้นหาข้อมูลจะซับซ้อน
- ไม่สามารถเข้าถึงข้อมูลแบบเรียงลำดับได้
จานแม่เหล็กเช่นดิสเก็ตต์ฮาร์ดดิสก์หรือ  CD-ROM 
3.               แบบลำดับเชิงดรรชนี
- สามารถรองรับการประมวลผลได้ทั้ง 2 แบบคือ  แบบลำดับและแบบสุ่ม
- เหมาะกับงานธุรกรรมออนไลน์  ด้วยเช่นเดียวกัน
- สิ้นเปลืองเนื้อที่ในการจัดเก็บดรรชนีที่ใช้อ้างอิงถึงตำแหน่งของข้อมูล
- การเขียนโปรแกรมเพื่อค้นหาข้อมูลจะซับซ้อน
- การทำงานช้ากว่าแบบสุ่ม  และมีค่าใช้จ่ายสูง
จานแม่เหล็ก  เช่น ดิสเก็ตต์ฮาร์ดดิสก์หรือ  CD-ROM

 3.ข้อดีของการจัดการข้อมูลด้วยแฟ้มข้อมูล
3.1 การประมวลผลข้อมูลได้รวดเร็ว เนื่องจากมีการแยกข้อมูลไว้เป็นแฟ้มต่างๆ
3.2 ลงทุนต่ำในเบื้องต้น อาจไม่จำเป็นต้องใช้คอมพิวเตอร์ที่มีความสามารถมาก ก็สามารถทำการประมวลผลข้อมูลได้
3.3 สามารถออกแบบแฟ้มข้อมูลและทำการพัฒนาได้ง่าย เนื่องจากมีขั้นตอนไม่สลับซับซ้อนมากนัก

อ้างอิงจาก             
http://www.thaigoodview.com/library/contest2552/type2/tech04/22/cit/6_4.html
http://scitech.rmutsv.ac.th/comtech/Student/Information_Theory/?p=120
http://kurocros.exteen.com/20110404/entry)

1 ความคิดเห็น: