
การแยกประเภทแฟ้มข้อมูลแฟ้มข้อมูลสามารถแยกประเภทของแฟ้มข้อมูลได้ดังนี้ แยกตามเนื้อหา มีดังนี้
1) แฟ้มข้อมูลหลัก (Master File) คือ แฟ้มข้อมูลที่ใช้เก็บข้อมูลไว้อย่างถาวร และมักจะเรียงตามลำดับของไพมารีคีย์ ข้อมูลจะต้องทันสมัยเพื่อได้ใช้ประมวลผลแฟ้มข้อมูลอย่างถูกต้อง ในแฟ้มข้อมูลหลักมักจะมีเขตข้อมูลสำหรับสะสมค่าอยู่ด้วย แฟ้มข้อมูลหลักมีไว้ใช้อ้างอิง และปรับปรุงให้ทันสมัยอยู่เสมอ
2) แฟ้มรายการ (Transaction File) หมายถึงแฟ้มข้อมูลที่บันทึกเหตุการณ์หรือความเปลี่ยนแปลงของแฟ้มข้อมูลหลัก เป็นรายการย่อยที่เกิดในช่วงเวลาหนึ่ง ๆ ที่เกิดจากการเพิ่มข้อมูล ข้อมูลต่าง ๆ ในแฟ้มข้อมูล ข้อมูลจะถูกเก็บไว้ชั่วคราว เมื่อปรับปรุงแฟ้มข้อมูลหลักแล้วระยะหนึ่งก็จะบันทึกลงแฟ้มรายการซึ่งมักจเรียงตามลำดับเหตุการณ์ โดยไม่จำเป็นต้องเรียงตามไพมารีคีย์ ถ้ามีรายการหลายประเภทอยู่ในแฟ้มเดียวกันมักมีรหัสบอกประเภทของ Transactionจะให้ 'P' แทนการซื้อ และ 'S' แทนการขาย
3) แฟ้มดัชนี (Index File) เช่นเดียวกับช่วงท้ายของหนังสือ แฟ้มดัชนีเป็นแฟ้มที่ใช้ชี้บอกตำแหน่งของข้อมูลในแฟ้มข้อมูล เพื่อช่วยให้ค้นหาได้รวดเร็ว
5) แฟ้มสรุปผล (Summary File) เป็นแฟ้มข้อมูลที่สร้างขึ้นมาจากแฟ้มข้อมูลอื่น โดยการรวบรวมหรือคำนวณ เพื่อให้อยู่ในรูปแบบที่มีความหมายมากขึ้นและไม่ต้องเสียเวลาทุกครั้งที่เรียกใช้งาน
6) แฟ้มงาน (Work File)
7) แฟ้มรายงาน (Report File) เป็นแฟ้มข้อมูลที่ใช้เก็บข้อมูลที่จะนำเสนอในรูปแบบของรายงาน
8) แฟ้มสำรอง (Backup File) เป็นแฟ้มสำรองข้อมูล เพื่อป้องกันความเสียหายหรือข้อผิดพลาดที่อาจเกิดขึ้นกับแฟ้มข้อมูลสำคัญ ๆ นิยมใช้ ฮาร์ดดิสก์ ในการเก็บแฟ้มสำรองข้อมูล
ในการเก็บข้อมูลด้วยคอมพิวเตอร์ในรูปแบบแฟ้มนั้นต้องประกอบด้วยเขตข้อมูลหลาย ๆ เขตรวมกันเป็นระเบียน การเก็บและการเรียกข้อมูลจะกระทำทีละระเบียน การแบ่งประเภทของแฟ้มจึงมักแบ่งแยกตามรูปแบบลักษณะการเรียกค้นหา ซึ่งแบ่งออกเป็น 3 แบบด้วยกันคือ+ แฟ้มลำดับ (sequential file)
+ แฟ้มสุ่ม (random file)
+ แฟ้มดัชนี (index file) ดังนี้
1) แฟ้มลำดับ เป็นแฟ้มที่มีโครงสร้างการเก็บข้อมูลแบบพื้นฐานที่สุด กล่าวคือ เมื่อมีการเพิ่มข้อมูลลงในแฟ้มทีละระเบียน ข้อมูลจะเข้าต่อท้ายเรียงกันไป ในการย้ายข้อมูลก็จะอ่านข้อมูลที่ละระเบียน เพื่อให้เข้าใจได้ง่ายอาจเปรียบเทียบได้กับการเก็บข้อมูลเพลงในเทปคาสเซต ซึ่งสมมติว่าในม้วนเทปหนึ่งมีการเก็บเพลงได้ 10 เพลง ความยาวเพลงละ 3 นาที ซึ่งหากต้องการค้นหาเพลงใดก็ต้องเริ่มต้นจากเพลงแรกไปเป็นลำดับจนกว่าจะพบaaaaa
2) แฟ้มสุ่ม เป็นแฟ้มที่มีคุณสมบัติที่ผู้ใช้สามารถอ่านหรือเขียนที่ตำแหน่งใด ๆ ก็ได้โดยไม่ต้องเรียงลำดับจากต้นแฟ้ม เช่น กรณีของการเก็บข้อมูลเพลงในเทปคาสเซต ถ้าต้องการอ่นเพลงที่ 5 ก็จะคำนวณความยาวของสายเทป เพื่อให้มีการเคลื่อนสายเทปไปยังตำแหน่งที่ต้องการแล้วจึงเริ่มอ่าน กรณีนี้จะทำได้เร็วกว่าสแบบลำดับaaaaa
3) แฟ้มแบบดัชนี แฟ้มแบบนี้จำเป็นต้องมีการจัดเรียงข้อมูลในเขตข้อมูลที่เป็นดัชนีเสียก่อน เพื่อประโยชน์ในการค้นหา การหาตำแหน่งในการเขียนการอ่านในระเบียนที่ต้องการปกติจะใช้ข้อมูลที่เป็นกุญแจสำหรับการค้นหา เพื่อความสะดวกในการกำหนดตำแหน่งการเขียนอ่าน ดังตัวอย่างเช่น ถ้าใช้ชื่อเพลงเป็นกุญแจสำหรับการค้นหา จะมีการเก็บชื่อเพลงโดยมีการจัดเรียงตามตัวอักษร เมื่อค้นหาชื่อเพลงได้ ก็ได้ลำดับเพลง ซึ่งสามารถนำไปคำนวณหาตำแหน่งที่ต้องการเขียนอ่านได้ต่อไป
วิธีการจัดการแฟ้มข้อมูล (File Organization Methods)
การจัดการแฟ้มข้อมูล ควรจัดให้เหมาะสมกับงานแต่ละประเภท วิธีจัดแฟ้มข้อมูลมีรูปแบบต่าง ๆ กัน ดังนี้ 1. การจัดแฟ้มข้อมูลแบบเรียงลำดับ (Sequential File) คือ แฟ้มข้อมูลที่มีการจัดเก็บข้อมูลหรืออ่านข้อมูล เรียงลำดับไปตั้งแต่เรคคอร์ดแรกจนถึงเรคคอร์ดสุดท้าย ส่วนใหญ่จะเรียงลำดับตามค่าของฟิลด์ที่ถูกเลือกเป็นคีย์ (Key) เช่น ฟ้มข้อมูลพนักงานอาจกำหนดให้รหัสประจำตัวพนักงานเป็นคีย์ ดังนั้นในการจัดเรียงเรคคอร์ด เพื่อเก็บข้อมูลลงในแฟ้มข้อมูลจะเรียงตามลำดับรหัสประจำตัวพนักงาน ถ้าต้องการอ่านข้อมูลก็จะอ่านเรียงตามลำดับรหัสประจำตัวพนักงานตั้งแต่เรคคอร์ดแรกไปจนถึงเรคคอร์ดที่ต้องการ การประมวลผลข้อมูลโดยทั่วไปจะใช้ข้อมูล 2 แฟ้ม คือ แฟ้มแรกจะเป็นแฟ้มข้อมูลหลัก จะบันทึกข้อมูลเก็บไว้อย่างถาวร และแฟ้มรายการจะเก็บข้อมูลเฉพาะรายการที่เปลี่ยนแปลง (Transcation) เอาไว้เมื่อเตรียมแฟ้มข้อมูลทั้งสองแฟ้มเรียบร้อยแล้ว โปรแกรมที่ทำหน้าที่ปรับปรุงข้อมูลจะทำการอ่านข้อมูลจากแฟ้มข้อมูลหลักและแฟ้มรายการ ถ้าใช้รหัสเป็นคีย์ (Key) ก็จะอ่านรหัสจากเรคคอร์ดแรกเรียงตามลำดับจนกว่าจะพบเรคคอร์ดที่มีค่าของคีย์เท่ากันรแกรมก็จะทำการปรับปรุงแก้ไขข้อมูลที่ระบุไว้ในรหัสลงในแฟ้มข้อมูลหลักแฟ้มใหม่ ต่อไปโปรแกรมก็จะอ่านข้อมูลจากแฟ้มข้อมูลหลักอีกนกว่าจะหมดแฟ้มะนั้นการเก็บข้อมูลลงในแต่ละแฟ้มต้องเรียงลำดับตามคีย์ที่กำหนดไว้สื่อที่ใช้ในการบันทึกข้อมูลแบบนี้นิยมใช้เทปแม่เหล็ก (Magnetic Tape) เพราะราคาถูก และเหมาะกับงานที่ต้องการเรียกใช้ข้อมูลนั้นบ่อย ๆ ข้อดี ของแฟ้มข้อมูลแบบเรียงลำดับ - เรียกใช้ง่าย สะดวก และเสียค่าใช้จ่ายน้อย - สามารถใช้กับงานที่ข้อมูลมีการเปลี่ยนแปลงเป็นจำนวนมาก ข้อเสีย ของแฟ้มข้อมูลแบบเรียงลำดับ - การทำงานจะช้า - ข้อมูลที่ใช้จะต้องถูกเรียงลำดับก่อน
2.การจัดแฟ้มข้อมูลแบบสุ่มหรือโดยตรง (Random Access or Direct Access File) คือแฟ้มข้อมูลที่มีลักษณะของการจัดเก็บข้อมูลที่สามารถเข้าถึงข้อมูลที่ต้องการได้โดยตรง สามารถค้นหาหรือเรียกข้อมูลจากแฟ้มข้อมูลได้อย่างรวดเร็วโดยไม่ต้องเรียงลำดับข้อมูล การประมวลผลมี 2 วิธี คือ วิธีที่ 1 โดยกำหนดให้ค่าของคีย์ (Key) ของแต่ละเรคคอร์ด แสดงถึงตำแหน่งที่เก็บข้อมูลในจานแม่เหล็ก เช่น กำหนดให้รหัสประจำตัวพนักงานเป็นคีย์ เช่น พนักงานรหัสที่120 ข้อมูลถูกเก็บไว้ในจานแม่เหล็กในแทร็ก (Track) ที่10 และเป็นเรคคอร์ดที่ 5 ในแทร็กนั้น ถ้าต้องการเรียกข้อมูลของพนักงาน ก็นำค่ารหัสมาแปลงเป็นตำแหน่งที่เก็บในจานแม่เหล็กได้โดยตรง วิธีที่ 2 ใช้เทคนิคที่รียกว่า แฮชชิ่ง (Hashing) คือ กระบวนการแปลงค่าของคีย์ให้เป็นตำแหน่งที่ในจานแม่เหล็กโดยใช้สูตรซึ่งมีหลายสูตรผลที่ได้จากวิธีแฮชชิ่งเป็นการสุ่มว่าจะเลือกใช้สูตรไหนในการเก็บข้อมูล จึงเรียกวิธีในการเข้าถึงข้อมูลวิธีนี้ว่าเป็นวิธีการเข้าถึงแบบสุ่ม สื่อที่ใช้ในการบันทึกข้อมูลแบบนี้ได้แก่ จานแม่เหล็ก (Magnetic Disk) การจัดแฟ้มข้อมูลแบบนี้เหมาะกับงานที่มีการเปลี่ยนแปลงข้อมูลครั้งละไม่มาก ข้อดี ของการจัดแฟ้มข้อมูลแบบสุ่ม - สามารถทำงานได้รวดเร็ว โดยไม่ต้องเสียเวลาเรียงลำดับข้อมูล - เหมาะกับการประมวลผลแบบออนไลน์ (On-Line) ข้อเสีย ของการจัดแฟ้มข้อมูลแบบสุม - การเขียนโปรแกรมสำหรับวิธีการจัดแฟ้มแบบนี้สลับซับซ้อนมากกว่าแบบเรียงลำดับ
3.การจัดแฟ้มข้อมูลแบบลำดับเชิงดัชนี (Indexed Sequential File) การจัดแฟ้มข้อมูลแบบนี้เป็นแบบเรียงลำดับตามคีย์ฟิลด์ (Key Field) เหมือนกับการจัดแฟ้มข้อมูลแบบเรียงลำดับ ข้อมูลในแฟ้มนี้จะถูกแบ่งออกเป็นช่วง ๆ หรือ เซกเมนต์ (Segment) โดยมีดัชนี (Index) เป็นตัวชี้บอกว่าข้อมูลที่ต้องการนั้นอยู่ในเซกเมนต์ใด วิธีนี้ทำให้การค้นหาข้อมูลได้เร็วเพราะการค้นหาข้อมูลจะอ่านเพียงเซกเมนต์เดียวไม่ต้องอ่านทั้งแฟ้มข้อมูล
อ้างอิง ↓
http://www.school.net.th/library/create-web/10000/generality/10000-8587.html
http://www.dsr.ac.th/it/content/IT/l03.html
http://www.streesmutprakan.ac.th/teacher/techno/WEB%20_JAN/p2.html