ในอุปกรณ์เก็บข้อมูลที่เราใช้งานอยู่ ไม่ว่าจะเป็นฮาร์ดดิสก์ภายใน (Internal Harddisk), ฮาร์ดดิสก์ภายนอก หรือ ฮาร์ดดิสก์พกพา (External Harddisk / Portable Harddisk), อุปกรณ์เก็บข้อมูลแบบ SSD (Solid-State Drive), การ์ดหน่วยความจำ (Memory Card) หรือแม้แต่แฟลชไดร์ฟ (USB Flash Drive) ก็ตาม จะมีระบบไฟล์ (File system) อยู่ในตัวสำหรับใช้ในจัดการกับข้อมูล ซึ่งมันก็มีให้เราเลือกรูปแบบของการฟอร์แมต (Format) ใช้งานได้อยู่หลากหลายมาตรฐาน
ข้อมูลเพิ่มเติม : ระบบไฟล์ (File System) เป็นเหมือนเป็นตารางที่ใช้บอกตำแหน่งของข้อมูลต่างๆ ที่อยู่บนพื้นที่เก็บข้อมูล ว่าอะไรอยู่ตรงไหน ด้วยการแบ่งพื้นที่ออกเป็นส่วนๆ เพื่อให้คอมพิวเตอร์รู้ว่าตำแหน่งของข้อมูล ซึ่งมีมาตรการการทำงานอยู่หลายรูปแบบ
โดยปกติแล้วจะเลือกมาตรฐานไหนก็ต้องพิจารณาจากระบบปฏิบัติการที่เราใช้งานอยู่ ตัวอย่างเช่น หากคุณใช้ระบบปฏิบัติการ Windows เวลาซื้อ SSD มาใช้ เราก็สามารถเลือกฟอร์แมทระหว่าง NTFS กับ exFAT ในขณะที่ Linux เราก็จะเลือก FAT32, NTFS หรือ ext4 อะไรทำนองนี้ระบบไฟล์เหล่านี้แตกต่างกันอย่างไร แล้วจะเลือกใช้งานอย่างไรดี มาค้นหาคำตอบกันได้ในบทความนี้ เลือกจากเมนูด้านล่างนี้ได้เลย
ตัวอย่าง File system ที่มีให้เลือก ตอนที่เราฟอร์แมทไดร์ฟ
FAT ย่อมาจาก File Allocation Table ที่ Microsoft พัฒนาขึ้นมา เป็นระบบไฟล์ที่ออกแบบมาให้มีความเรียบง่าย เดิมทีพัฒนาขึ้นมาใช้กับไดร์ฟเก็บข้อมูลที่ความจุต่ำ มีโครงสร้างโฟลเดอร์ที่ไม่ซับซ้อน
การทำงานของ FAT จะจำลองพื้นที่ภายในออกเป็นส่วนๆ เรียกว่า Clusters ในการทำดัชนีข้อมูลว่าไฟล์จะถูกเก็บไว้ที่ไหน และมีพื้นที่เหลืออยู่อีกเท่าไหร่
FAT32 เป็นตัวเลือกที่ดีสำหรับใช้ในไดร์ฟเก็บข้อมูลแบบภายนอก อย่างพวก Flash drives และ External drives เพราะสามารถถอดไปใช้กับอุปกรณ์อื่นๆ ได้อย่างหลากหลาย โดยไม่ต้องกังวลว่าอุปกรณ์ที่ใช้ระบบปฏิบัติการอื่นๆ จะเปิดดูไฟล์ไม่ได้
อย่างไรก็ตาม เราต้องมั่นใจว่าไม่มีไฟล์ไหนที่เราต้องการเก็บมีขนาดใหญ่กว่า 4 GB นะ
NTFS ย่อมาจาก New Technology File System พัฒนาโดย Microsoft เช่นกัน โดยเริ่มใช้ใน Windows NT 3.1 ตั้งแต่ปี ค.ศ.1993 (พ.ศ. 2536) ปัจจุบันเป็นระบบไฟล์หลักของ Windows โดยเฉพาะอย่างยิ่งกับไดร์ฟที่เก็บระบบปฏิบัติการ และไดร์ฟที่อยู่ในคอมพิวเตอร์
โดย NTFS มีความสามารถมากมายเมื่อเทียบกับ FAT32 และ exFAT
ระบบไฟล์แบบ NTFS เป็นระบบที่ดีที่สุดแล้วสำหรับการใช้งานกับระบบปฏิบัติการ Windows การใช้งานร่วมกับระบบปฏิบัติการอื่น จริงๆ ก็สามารถทำได้แต่อาจจะต้องอาศัยซอฟต์แวร์ช่วย หรือตั้งค่าก่อนในระดับหนึ่ง
Resilient File System (ReFS) เป็นระบบไฟล์แบบใหม่ล่าสุดของ Microsoft ออกแบบมาโดยมีเป้าหมายในการเพิ่มประสิทธิภาพในการจัดการกับข้อมูลให้ดียิ่งขึ้น สามารถรองรับการทำงานกัลไฟล์ข้อมูลปริมาณมากได้เร็วกว่าเดิม และมีระบบช่วยป้องกันไม่ให้ไฟล์เกิดความเสียหาย
นอกเหนือจากเรื่องประสิทธิภาพในการจัดการไฟล์ที่ดียิ่งขึ้น และมีระบบป้องกันไฟล์เสียหายแล้ว การที่มันเพิ่มความเร็วในการจัดการไฟล์ ทำให้การทำ Block cloning ภายในไดร์ฟเร็วกว่าเดิมมาก ซึ่งจะเห็นผลได้อย่างชัดเจนเวลาที่ถ่ายโอนไฟล์ขนาดใหญ่ที่ประกอบรวมจากไฟล์ขนาดเล็กจำนวนมาก
นอกจากนี้ มันยังมีคุณสมบัติ Sparse VDL (valid data length) ซึ่งระบบ ReFS จะใช้ VDL ในการประเมินว่าไฟล์ดังกล่าวควรใช้พื้นที่จัดเก็บขนาดเท่าไหร่ มันมีประโยชน์ต่อการสร้าง VHDX ขึ้นใหม่ใน Hyper-V ให้เร็วขึ้นกว่าเดิม
exFAT ย่อมาจาก Extended File Allocation Table เป็นระบบไฟล์ที่ Microsoft เปิดตัวเมื่อปี ค.ศ. 2006 (พ.ศ. 2549) มันถูกสร้างขึ้นมาเพื่อใช้งานแทน FAT32 มีโครงสร้างเหมือน FAT32 แต่มีการแก้ไขข้อจำกัดของ FAT32 ให้หมดไป โดยมันถูกสร้างขึ้นมาเพื่อใช้งานกับหน่วยความจำภายนอกอย่างพวก แฟลชไดร์ฟ, การ์ดหน่วยความจำ ฯลฯ
exFAT เป็นระบบไฟล์ที่เราสามารถเลือกใช้งานเมื่อไฟล์ที่เก็บมีขนาดใหญ่กว่า 4 GB และต้องการใช้งานกับระบบปฏิบัติการอื่นๆ มากกว่าที่ NTFS สามารถทำได้ โดย exFAT รองรับใช้งานได้กับ macOS และ Linux กลุ่มSD card Association ที่พัฒนา SD card เองก็ใช้ exFAT เป็นระบบไฟล์เริ่มต้น แม้แต่ระบบปฏิบัติการ Android เองก็รองรับระบบไฟล์แบบ exFAT
ระบบไฟล์ ext เป็นระบบไฟล์ที่ถูกสร้างขึ้นมาเพื่อใช้งานบนระบบปฏิบัติการ Linux และพัฒนาจาก ext ที่เปิดตัวเมื่อปี ค.ศ. 1992 (พ.ศ. 2535) เป็น ext2, ext3 ก่อนจะมาเป็น ext4 ในปี ค.ศ. 2008 (พ.ศ. 2551)
ระบบไฟล์ ext มีความสามารถในการป้องกันไฟล์เสียหายจากข้อผิดพลาด หรือไฟดับกระทันหัน ตั้งแต่ใน ext3 ส่วนใน ext4 ได้ขยายขนาดไฟล์ที่สามารถบันทึกได้เป็น 16 TB. และรองรับความจุไดร์ฟได้ถึง 1,152,921.5 TB.
นอกจาก Linux แล้ว Windows และ macOS ก็รองรับการทำงานร่วมกับระบบไฟล์ ext2, ext3 และ ext4
หาก Microsoft มี FAT32 ทาง Apple ก็มี HFS (Hierarchical File System) เปิดตัวในปี ค.ศ. 1985 (พ.ศ. 2528) สำหรับใช้งานใน Mac OS รองรับไฟล์ใหญ่สุด 2 GB และความจุไดร์ฟสูงสุด 2 TB
ในปี ค.ศ. 1998 (พ.ศ. 2541) ระบบไฟล์ HFS ได้รับการอัปเกรดเป็น HFS+ หรือ HFS Extended มันได้รับการปรับปรุงให้รองรับขนาดไฟล์ และขนาดไดร์ฟได้ถึง 8,388,608 TB (เมื่อใช้งานบน macOS 10.4 หรือใหม่กว่า)
ระบบไฟล์ APFS ย่อมาจาก Apple File System เปิดตัวในปี ค.ศ. 2017 (พ.ศ. 2560) โดยมันปรับปรุงให้ทำงานร่วมกับ SSD หรือ Solid state media ได้ดียิ่งขึ้น
ระบบไฟล์ HFS, HFS+ และ APFS เป็นระบบไฟล์ของ macOS ไม่รองรับการใช้งานแบบ Native กับ Windows, Linux หรือระบบปฏิบัติการใดๆ ที่ไม่ใช่ของ Apple
File System | Windows XP | Windows 7/8/10 | macOS (10.6.4 หรือใหม่กว่า) | macOS (10.6.5 หรือใหม่กว่า) | Ubuntu Linux | Playstation 4 | Xbox 360/One |
NTFS | ✔ | ✔ | (อ่านได้อย่างเดียว) | (อ่านได้อย่างเดียว) | ✔ | ✕ | ✕/✔ |
FAT32 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔/✔ |
exFAT | ✔ | ✔ | ✕ | ✔ | ✔ (ใช้ ExFAT Packages) | ✔ (ใช้ MBR, ไม่รองรับ GUID) | ✕/✔ |
HFS+ | ✕ | (อ่านอย่างเดียว ด้วย Boot Camp) | ✔ | ✔ | ✔ | ✕ | ✔ |
APFS | ✕ | ✕ | ✕ | ✔ (macOS 10.13 หรือใหม่กว่า) | ✕ | ✕ | ✕ |
EXT 2, 3, 4 | ✕ | ✔ (ใช้ซอฟต์แวร์ 3rd-Party ช่วย) | ✕ | ✕ | ✔ | ✕ | ✔ |
File System | ขนาดไฟล์สูงสุดที่รองรับ | ความจุไดร์ฟสูงสุด |
NTFS | สูงสุด 16 EiB. | 16 EB. |
FAT32 | สูงสุด 4 GB. | สูงสุด 8 TB. |
exFAT | สูงสุด 16 EiB. | 64 ZB. |
HFS+ | 8 EB. | 8 EB. |
APFS | 8 EiB. | 16 EB. |
EXT 2, 3 | 16 GB. (สูงสุด 2 TB ในบางระบบ) | 32 TB. |
EXT 4 | 16 TiB. | 1 EiB. |
อธิบายหน่วยวัด
- 1 ZB. = 1,000,000,000 TB.
- 1 EiB. = 1,152,921.5 TB.
- 1 EB. = 1,048,576 TB.
- 1 TB. = 1,024 GB.
ZFS หรือ Zed File System เป็นระบบไฟล์จาก Sun Microsystems ที่เปิดตัวเป็นครั้งแรกในปี ค.ศ. 2006 (พ.ศ. 2549) แต่ตั้งแต่ปี ค.ศ. 2013 (พ.ศ. 2556) เป็นต้นมา ได้รับการพัฒนาต่อโดย Open ZFS Project
ความสามารถที่โดดเด่นของ ZFS คือสามารถเก็บข้อมูลจำนวนมหาศาล และความสามารถด้านเสถียรภาพที่มั่นคงกว่าของระบบไฟล์อื่นๆ มาพร้อมระบบตรวจไฟล์เพื่อป้องกันข้อผิดพลาดที่อาจจะเกิดขึ้นเมื่อคอมพิวเตอร์เรียกดูไฟล์
ZFS ยังเป็นระบบไฟล์ที่มีความแตกต่างจากระบบไฟล์อื่นๆ ตรงที่มันใส่ระบบควบคุมไดร์ฟสำหรับใช้ควบคุมพื้นที่เก็บข้อมูลเอาไว้ในตัว ทำให้สามารถรวมไดร์ฟเพื่อสร้างไดร์ฟขนาดใหญ่ (RAID) ด้วยซอฟต์แวร์ได้ทันที
เราใช้ระบบปฏิบัติการตัวไหนก็ควรเลือกใช้ระบบไฟล์ที่รองรับเป็นหลัก พูดง่ายๆ คือ
- NTFS : สำหรับ Windows
- HFS+ หรือ APFS : สำหรับ Mac
- ext4 : สำหรับ Linux
ส่วนพวกแฟลชไดร์ฟ (USB Flash Drive) ฮาร์ดดิสก์ภายนอก (External Harddisk) หรือแม้แต่ การ์ดหน่วยความจำ (Memory Card) ที่ไม่ได้อ้างอิงจากระบบปฏิบัติการของเครื่องที่ลงอยู่ ก็ขอให้พิจารณาระหว่าง FAT32 กับ exFAT หากไฟล์มีขนาดเล็กกว่า 4 GB การเลือก FAT32 ก็จะใช้งานได้ครอบคลุมกับระบบปฏิบัติการได้มากกว่า ถ้ามีไฟล์ขนาดใหญ่กว่านั้นก็ค่อยเลือก exFAT
เวลาที่เราฟอร์แมทไดร์ฟจะมีตัวเลือกให้เรากำหนดขนาดของ Allocation Unit Size แล้วอาจจะสงสัยว่ามัน คือค่าอะไร?
ให้ลองจินตนาการว่าพื้นที่ที่ใช้เก็บข้อมูลในไดร์ฟของเราเป็นลูกบาศก์สี่เหลี่ยมจัตุรัสก้อนใหญ่อยู่ก้อนหนึ่งที่มีความจุพื้นที่ขนาด 100 หน่วย ซึ่งเจ้าลูกบาศก์นี้จะใส่ข้อมูลได้ 1 อัน ต่อลูกบาศก์ 1 ก้อน
สมมติให้ "ข้อมูล A" มีขนาด 20 หน่วย เมื่อเราจับมันใส่ไปในลูกบาศก์นี้แล้ว แม้จะเหลือพื้นที่อีกตั้ง 80 หน่วย แต่เราไม่สามารถเอา "ข้อมูล B" มาใส่เพิ่มได้แล้วนะ เท่ากับว่าเราจะเสียพื้นที่ไปฟรีๆ 80 หน่วย
ด้วยการหั่นซอยลูกบาศก์ก้อนเดิมที่มีพื้นที่ 100 หน่วย ออกเป็นลูกบาศก์ก้อนเล็กลงที่มีพื้นที่ก้อนละ 10 หน่วยแทน เราก็จะได้ลูกบาศก์มาทั้งหมด 10 ก้อน เมื่อเราจัดเก็บ "ข้อมูล A" เราก็จะใช้ลูกบาศก์ไป 2 แค่ 2 ก้อน เหลืออีก 8 ก้อน ให้เราใช้เก็บ "ข้อมูล B", "ข้อมูล C"...ได้นั่นเอง
ในการฟอร์แมทไดร์ฟ ค่าเริ่มต้นของ Allocation Unit Size จะอยู่ที่ 4096 Bytes ต่อ 1 บล็อก หมายความว่าข้อมูลขนาด 1 MB. (หรือ 1,000,000 Bytes) ถ้าคิดแบบเป๊ะๆ มันต้องใช้พื้นที่เก็บข้อมูล 244.140625 บล็อก แต่ในทางปฏิบัติ บล็อกจะถูกใช้เต็มแค่ 244 บล็อกเท่านั้น ส่วนบล็อกที่ 245 จะเก็บข้อมูลแค่เพียง 0.140625 Bytes เหลือพื้นที่ว่าง 4095.859375 Bytes ที่ต้องเสียไปฟรีๆ แต่ด้วยความที่ "4095.859375 Bytes" นี้มันเล็กน้อยมาก
โดยในอดีตที่หน่วยเก็บข้อมูลมีความจุน้อยราคาแพง เราอาจจะต้องพิจารณาหาค่า Allocation Unit Size ที่เหมาะสมหากต้องการรีดพื้นที่ให้ได้มากที่สุด แต่ปัจจุบันนี้พื้นที่เก็บข้อมูลราคาถูก และความจุก็เพิ่มขึ้นอย่างมหาศาล เราก็อย่ามาเสียเวลากับการคำนวณอะไรพวกนี้เพื่อประหยัดพื้นที่ได้เพิ่มขึ้นแค่ "นิดนึงเลย" การเลือกใช้ค่าเริ่มต้น Allocation Unit Size ที่ 4096 Bytes จึงเป็นอะไรที่โอเคอยู่แล้ว
|
แอดมินสายเปื่อย ชอบลองอะไรใหม่ไปเรื่อยๆ รักแมว และเสียงเพลงเป็นพิเศษ |
ความคิดเห็นที่ 1
20 มิถุนายน 2564 20:10:07
|
||
ยอดเยี่ยมมากมาย
|
||