วันอาทิตย์ที่ 4 เมษายน พ.ศ. 2553

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

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

เป็นการกำหนดวิธีการที่ระเบียนถูกจัดเก็บอยู่ในแฟ้มข้อมูลบนอุปกรณ์ที่ใช้เก็บข้อมูล ซึ่งลักษณะโครงสร้างของระเบียนจะถูกจัดเก็บไว้เป็นระบบ โดยมีวัตถุประสงค์เพื่อให้การจัดเก็บข้อมูลและการเข้าถึงข้อมูลมีความสะดวกรวดเร็ว การจัดโครงสร้างของแฟ้มข้อมูลอาจแบ่งได้เป็น 3 ลักษณะคือ
1 โครงสร้างของแฟ้มข้อมูลแบบลำดับ (sequential file) เป็นการจัดแฟ้มข้อมูซึ่งระเบียนภายในแฟ้มข้อมูลจะถูกบันทึกโดยเรียงตามลำดับคีย์ฟิลด์ หรืออาจจะไม่เรียงลำดับตามคีย์ฟิลด์ก็ได้ ข้อมูลจะถูกบันทึกลงในสื่อบันทึกข้อมูลโดยจะถูกบันทึกไว้ในตำแหน่งที่อยู่ติด ๆ กัน การนำข้อมูลมาใช้ของโครงสร้างแฟ้มข้อมูลแบบลำดับจะต้องอ่านข้อมูลไปตามลำดับจะเข้าถึงข้อมูลโดยตรงไม่ได้ ส่วนการจัดโครงสร้างแฟ้มข้อมูลแบบลำดับตามดัชนี เป็นการจัดข้อมูลแบ่งตามหมวดหมู่ สรุปเป็นตารางซึ่งมีลักษณะคล้ายสารบาญของหนังสือ การจัดข้อมูลแบบนี้ทำให้สามารถเข้าถึงข้อมูลได้ง่าย โดยตรงไปที่ตารางซึ่งเป็นดัชนี จะทำให้ทราบตำแหน่งของข้อมูลนั้น โดยไม่ต้องอานข้อมูลทีละระเบียน การจัดโครงสร้างของแฟ้มข้อมูลแบบสัมพัทธ์ แฟ้มข้อมูลแบบสัมพัทธ์นี้ข้อมูลจะถูกบันทึกโดยอาศัยกลไกการกำหนดตำแหน่งของข้อมูล ซึ่งจะช่วยให้สามารถตรงไปถึงหรือบันทึกข้อมูลที่ต้องการได้โดยไม่ต้องอ่านหรือผ่านข้อมูลที่อยู่ในลำดับก่อนหน้าระเบียนที่ต้องการ การดึงหรือการบันทึกข้อมูลจะสามารถทำได้อย่างรวดเร็ว
ในโครงสร้างแฟ้มข้อมูลแบบลำดับประกอบด้วยระเบียนที่จัดเรียงไปตามลำดับอย่างต่อเนื่องเมื่อจัดสร้างแฟ้มข้อมูลโดยจะบันทึกระเบียนเรียงตามลำดับการบันทึกระเบียนจะถูกเขียนต่อเนื่องไปตามลำดับจากระเบียนที่ 1 ถึงระเบียน n และการอ่านระเบียนภายในแฟ้มข้อมูลก็ต้องใช้วิธีการอ่านแบบต่อเนื่องตามลำดับ คือ อ่านตั้งแต่ต้นแฟ้มข้อมูลไปยังท้ายแฟ้มข้อมูล โดยอ่านระเบียนที่ 1,2,3 และ 4 มาก่อน ตัวอย่างเช่น ถ้าต้องการอ่านระเบียนที่ 8 ก็ต้องอ่านระเบียนลำดับที่ 1,2,3,4,5,6,7 ก่อน
2 โครงสร้างของแฟ้มข้อมูลแบบลำดับตามดัชนี (index sequential file) เป็นวิธีการเก็บข้อมูลโดยแต่ละระเบียนในแฟ้มข้อมูลจะมีค่าของคีย์ฟิลด์ที่ใช้เป็นตัวระบุระเบียนนั้น ค่าคีย์ฟิลด์ของแต่ละระเบียนจะต้องไม่ซ้ำกับค่าคีย์ฟิลด์ในระบบอื่น ๆ ในแฟ้มข้อมูลเดียวกัน เพราะการจัดโครงสร้างแฟ้มข้อมูลแบบนี้จะใช้คีย์ฟิลด์เป็นตัวเข้าถึงข้อมูล การเข้าถึงข้อมูลหรือการอ่านระเบียนใด ๆ จะเข้าถึงได้อย่างสุ่ม การจัดโครงสร้างแฟ้มข้อมูลต้องบันทึกลงสื่อข้อมูลที่เข้าถึงข้อมูลได้โดยตรง เช่น จานแม่เหล็ก การสร้างแฟ้มข้อมูลประเภทนี้ไม่ว่าจะสร้างครั้งแรกหรือสร้างใหม่ ข้อมูลแต่ละระเบียนต้องมีฟิลด์หนึ่งใช้เป็นคีย์ฟิลด์ของข้อมูล ระบบปฏิบัติการจะนำคีย์ฟิลด์ของข้อมูลไปสร้างเป็นตารางดัชนีทำให้สามารถเข้าถึงระเบียนได้เร็ว นอกจากจะเข้าถึงระเบียนใด ๆ ได้เร็วขึ้นแล้วยังมีประโยชน์สามารถเพิ่มระเบียนเข้าในส่วนใด ๆ ของแฟ้มข้อมูลได้ ในแต่ละแฟ้มข้อมูลที่ถูกบันทึกลงสื่อข้อมูลจะมีตารางดัชนีทำให้เข้าถึงระเบียนใด ๆ ได้รวดเร็วขึ้น โครงสร้างแฟ้มข้อมูลแบบลำดับตามดัชนีประกอบด้วย
1)ดัชนี (index) ของแฟ้มข้อมูลจะเก็บค่าคีย์ฟิลด์ของข้อมูล และที่อยู่ในหน่วยความจำ (address) ที่ระเบียนนั้นถูกนำไปบันทึกไว้ ซึ่งดัชนีนี้จะต้องเรียงลำดับจากน้อยไปมาก หรือจากมากไปน้อยโดยที่ส่วนของดัชนีจะมีตัวบ่งชี้ไปยังที่อยู่ในหน่วยความจำ เพื่อจะได้นำไปถึงระเบียนข้อมูลในข้อมูลหลัก
2)ข้อมูลหลัก (data area) จะเก็บระเบียนข้อมูล ซึ่งระเบียนนั้นอาจจะเรียงตามลำดับจากน้อยไปมากหรือจากมากไปน้อย ในการจัดลำดับของข้อมูลหลักอาจจะจัดข้อมูลออกไปกลุ่ม ๆ โดยจะเว้นที่ไว้เพื่อให้มีการปรับปรุงแฟ้มข้อมูลได้ 3 โครงสร้างของแฟ้มข้อมูลแบบสัมพัทธ์ (relative file) เป็นโครงสร้างที่สามารถเข้าถึงข้อมูลหรืออ่านระเบียนใด ๆ ได้โดยตรง วิธีนี้เป็นการจัดเรียงข้อมูลเข้าไปในแฟ้มข้อมูลโดยอาศัยฟิลด์ข้อมูลเป็นตัวกำหนดตำแหน่งของระเบียนนั้น ๆ โดยค่าของคีย์ฟิลด์ข้อมูลในแต่ละระเบียนของแฟ้มข้อมูลจะมีความสัมพัทธ์กับตำแหน่งที่ระเบียนนั้นถูกจัดเก็บไว้ในหน่วยความจำ ค่าความสัมพัทธ์นี้ เป็นการกำหนดตำแหน่ง (mapping function) ซึ่งเป็นฟังก์ชั่นที่ใช้ในการเปลี่ยนแปลงคีย์ฟิลด์ของระเบียนให้เป็นตำแหน่งในหน่วยความจำ โดยที่การจัดเรียงลำดับที่ของระเบียนไม่จำป็นต้องมีความสัมพันธ์กับการจัดลำดับที่ของระเบียนที่ถูกจัดเก็บไว้ในหน่วยความจำ
การจัดเก็บข้อมูลลงแฟ้มข้อมูลแบบสัมพัทธ์ (relative file) จะถูกจัดเก็บอยู่บนสื่อที่สามารถเข้าถึงได้โดยตรง เช่น แผ่นจานแม่เหล็ก ลักษณะโครงสร้างแฟ้มข้อมูลแบบสัมพัทธ์จะประกอบด้วยตำแหน่งในหน่วยความจำ ซึ่งเกิดจากนำคีย์ฟิลด์ของระเบียนมาทำการกำหนดตำแหน่ง ซึ่งการกำหนดตำแหน่งนี้จะทำการปรับเปลี่ยนค่าคีย์ฟิลด์ของระเบียนให้เป็นตำแหน่งในหน่วยความจำที่คำนวณได้ แฟ้มข้อมูลหลัก แฟ้มข้อมูลนี้ประกอบด้วยระเบียนที่จัดเรียงตามตำแหน่งในหน่วยความจำโดยจะเรียงจากระเบียนที่ 1 จนถึง N แต่จะไม่เรียงลำดับตามค่าของคีย์ฟิลด์
การจัดโครงสร้างของแฟ้มข้อมูล (File Organization) โดยปกติแฟ้มข้อมูลจะถูกเก็บไว้ในหน่วยความจำสำรอง (secondary storage) เช่น ฮาร์ดดิสก์ เนื่องจากมีความจุข้อมูลสูงและสามารถเก็บได้ถาวรแม้จะปิดเครื่องไป ซึ่งการจัดเก็บนี้จะต้องมีวิธีกำหนดโครงสร้าง โดยมีวัตถุประสงค์เพื่อให้การจัดเก็บและเข้าถึงข้อมูลมีความรวดเร็ว ถูกต้อง และเหมาะสมกับความต้องการ การเข้าถึงและค้นคืนข้อมูลจะอาศัยคีย์ฟีลด์ในการเรียกค้นด้วยเสมอ การจัดโครงสร้างของแฟ้มข้อมูลอาจจะแบ่งได้เป็น 3 ลักษณะดังนี้
1. โครงสร้างของแฟ้มข้อมูลแบบเรียงลำดับ (Sequential File Structure) เป็นโครงสร้างของแฟ้มข้อมูลชนิดพื้นฐานที่สามารถใช้งานได้ง่ายที่สุด เนื่องจากมีลักษณะการจัดเก็บข้อมูลแบบเรียงลำดับเรคคอร์ดต่อเนื่องกันไปเรื่อยๆ การอ่านหรือค้นคืนข้อมูลจะข้ามลำดับไปอ่านตรงตำแหน่งใดๆที่ต้องการโดยตรงไม่ได้ เมื่อต้องการอ่านข้อมูลที่เรคคอร์ดใดๆโปรแกรมจะเริ่มอ่านตั้งแต่เรคคอร์ดแรกไปเรื่อยๆจนกว่าจะพบเรคคอร์ดที่ต้องการ ก็จะเรียกค้นคืนเรคคอร์ดนั้นขึ้นมา การใช้ข้อมูลเรียงลำดับนี่จึงเหมาะสมกับงานประมวลผลที่มีการอ่านข้อมูลต่อเนื่องกันไปเรื่อยๆตามลำดับและปริมาณครั้งละมากๆตัวอย่างเช่น ใบแจ้งหนี้ค่าบริการไฟฟ้า น้ำประปา ค่าโทรศัพท์หรือค่าบริการสาธารณูปโภคอื่นๆที่มีเรคคอร์ดของลูกค้าจำนวนมาก เป็นต้น แฟ้มข้อมูลแบบนี้ถ้าเป็นเครื่องคอมพิวเตอร์ระดับเมนเฟรมขนาดใหญ่ก็จะจัดเก็บอยู่ในอุปกรณ์ประเภทเทปแม่เหล็ก (magnetic tape) ซึ่งมีการเข้าถึงแบบลำดับ (Sequential access) เวลาอ่านข้อมูลก็ต้องเป็นไปตามลำดับด้วย คล้ายกับการเก็บข้อมูลเพลงลงบนเทปคาสเซ็ต ซึ่งสมมติว่าในม้วนเทปหนึ่งมีการเก็บเพลงได้ 10 เพลง ความยาวเพลงละ 3 นาที ซึ่งหากต้องการค้นหาเพลงใดก็ต้องเริ่มต้นจากเพลงแรกไปเป็นลำดับจนกว่าจะพบ
2. โครงสร้างของแฟ้มข้อมูลแบบสุ่ม (Direct/Random File Structure) เป็นลักษณะของโครงสร้างแฟ้มข้อมูลที่เข้าถึงได้โดยตรง เมื่อต้องการอ่านค่าเรคคอร์ดใดๆสามารถทำการเลือกหรืออ่านค่านั้นได้ทันที ไม่จำเป็นต้องผ่านเรคคอร์ดแรกๆเหมือนกับแฟ้มข้อมูลแบบเรียงลำดับ ซึ่งทำให้การเข้าถึงข้อมูลได้รวดเร็วกว่า ปกติจะมีการจัดเก็บในสื่อที่มีลักษณะการเข้าถึงได้โดยตรงประเภทจานแม่เหล็ก เช่น ดิสเก็ตต์, ฮาร์ดดิสก์หรือ CD-ROM เป็นต้น
3. โครงสร้างของแฟ้มข้อมูลแบบลำดับเชิงดรรชนี (Index Sequential File Structure) เป็นลักษณะของโครงสร้างแฟ้มข้อมูลที่อาศัยกระบวนการที่เรียกว่า ISAM (Index Sequential Access Method ) ซึ่งรวมเอาความสามารถในการเข้าถึงข้อมูลแบบสุ่มและแบบเรียงตามลำดับเข้าไว้ด้วยกัน การจัดโครงสร้างแฟ้มข้อมูลวิธีนี้ ข้อมูลจะถูกจัดเก็บเรียงกันตามลำดับไว้บนสื่อแบบสุ่ม เช่น ฮาร์ดดิสก์ และการเข้าถึงข้อมูลจะทำผ่านแฟ้มข้อมูลลำดับเชิงดรรชนี (Index Sequential File) ซึ่งทำหน้าที่ช่วยชี้และค้นหาข้อมูลที่ต้องการได้ สามารถทำงานได้ยืดหยุ่นกว่าวิธีอื่นๆโดยเฉพาะกับกรณีที่ข้อมูลในการประมวลผลมีจำนวนมากๆ โครงสร้างแฟ้มข้อมูลแบบนี้จะมีหลักการทำงานคล้ายกับรูปแบบดรรชนีท้ายเล่มหนังสือที่มีการจัดเรียงหัวเรื่องแยกไว้เป็นลำดับตามหมวดหมู่อักษรตั้งแต่ A-Z หรือ ก-ฮ เมื่อสนใจหัวเรื่องใดโดยเฉพาะ ผู้อ่านสามารถไล่ค้นได้จากชื่อหัวเรื่องที่พิมพ์เรียงกันไว้เป็นลำดับนั้นเพื่อดูหมายเลขหน้าได้ ซึ่งทำให้ง่ายและสะดวกมากยิ่งขึ้น

http://www.thaigoodview.com/library/contest2552/type2/tech04/22/cit/6_4.html
http://www.sirikitdam.egat.com/WEB_MIS/103_116/10.html
http://www.thaigoodview.com/library/teachershow/prajuab/tanyalak_k/2/c2_10.htm

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

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