ZFS File System คืออะไรและดีอย่างไร

Published on July 2, 2025
ZFS File System คืออะไรและดีอย่างไร

ZFS มีชื่อเต็มว่า Zettabyte File System เป็นระบบจัดการไฟล์หรือ File System ที่ถูกสร้างโดยบริษัท SUN Microsystems (ตอนนี้ก็เป็นส่วนหนึ่งของ Oracle) เพื่อที่จะจัดการและควบคุมการเข้าถึง storage ในระดับ enterprise เพราะ แต่ก่อนนั้น Sun Microsystems ก็จะมุ่งเน้นให้บริการเซิร์ฟเวอร์และ OS ระดับองค์กรเป็นทุนเดิมอยู่แล้ว

ZFS File system นั้นนอกจากจัดการไฟล์และยังเป็น volume manager ด้วย รองรับการขยายได้ดีมาก และ ฟีเจอร์เจอร์สำหรับสตอเรจเช่น

  • Replication
  • Deduplication
  • Compression
  • Snapshot
  • Clones
  • Data protection
  • Encryption

ZFS นั้นรองรับการเก็บข้อมูลที่ใหญ่มากถึง 256 quadrillion zettabyte เลยทีเดียว

แล้ว ZFS ทำงานอย่างไร ?

ZFS นั้นสามารถจัดการ disk ที่อยู่ใน server ตัวหนึ่งๆ ได้เป็นพันก้อนเลยทีเดียว โดยจะมี zpool ที่ด้านล่างก็คือ virtual device ที่เรียกว่า vdev เมื่อใดก็ตามที่เราต้องการเนื้อที่เพิ่มขึ้น  เราก็เพิ่ม disk เข้ามายัง pool นั่นจึงเป็นที่มาว่าทำไมเราจึงขยายได้เยอะมากๆ

ZFS นั้นจะเก็บ metadata ไว้ 2 สำเนา โดย metadata นั้นก็จะเป็นข้อมูลเกี่ยวกับ sector และขนาด block รวมถึง checksum เมื่อผู้ใช้งานต้องการเข้าถึงไฟล์ checksum ก็จะคำนวนเพื่อที่จะดึงข้อมูลที่ตรงกัน หากว่าเกิดความผิดพลาดหรือว่า checksum ไม่ตรง นอกจากนั้นมันยังมีความสามารถในการดึงข้อมูลจาก drive อื่นๆ ได้ด้วย และ ทำการ flag พื้นที่เสียได้ หากเราทำ mirror ในระดับ storage pool ไว้

ZFS นั้นเรียกได้ว่ามีคุณสมบัติแบบ copy-on-write (COW) แต่ทาง Oracle นั้นจะบอกว่าเป็น redirect-on-write เพราะเมื่อ ZFS ทำการเขียนข้อมูลลงดิสก์ มันไม่ได้ทำการเขียนทับข้อมูล แต่จะเขียนไปยัง block ใหม่ และ ทำการอัพเดท metadata

ZFS นั้นเรียกว่าเป็นทางเลือกที่ดีมาก ในการใช้งานใน NAS และใช้ NFS ทำงานบนตัวมัน นอกจากนั้นไปใช้งานใน General Parallel File system (GPFS) หรือ Lustre บน ZFS ก็เหมาะมากเช่นกัน สำหรับ OpenStack นั้นสามารถใช้งาน Cinder block storage และ Swift Object Storage บน ZFS ได้

คุณสมบัติหลักของ ZFS

Sanpshots และ Clones

ZFS และ OpenZFS เราเรียกว่าสามารถทำ point-in-time หรือสำเนาของ file system ด้วยความเร็วสูง สำหรับ snapshot นั้นเป็นข้อมูลที่ถูกเปลี่ยนแปลงไม่ได้ แต่ถ้า Clone จะถูกเปลี่ยนแปลงได้ ทั้งสองแบบนั้นถูกใ้งานใน Solaris OS ทำให้ผู้ใช้งานนั้นย้อนเวลากลับไปได้หา snapshot ที่ต้องการ เช่นเมื่อ patch แล้วมีปัญหา หรือ อัพเดทระบบแล้วมีปัญหา

RAID-Z

หลักการนี้ จะทำให้ ผู้ใช้เก็บสำเนาของข้อมูลไปยังหลายๆ สถานที่ ก็เหมือนกับการทำ RAID นั่นเอง เพื่อป้องกันความเสียหาย และ เพิ่มประสิทธิภาพ มันมีหลักการทำงานเช่นเดียวกับ RAID 5 แต่มีการทำงานต่างกันเล็กน้อย

RAID-Z2 และ RAID-Z3

วิธีการนี้ทำงานคล้ายกับ RAID 6 เพราะทนต่อดิสก์เสียได้ 2 ตัว ในขณะที่ RAID-Z3 ทนต่อดิสก์เสียได้ 3 ตัวเลยทีเดียว

Compression

ZFS สนับสนุนการบีบอัดข้อมูลในตัว (in-line)

Deduplication

ทั้ง ZFS และ OpenZFS นั้นสนับสนุนการทำ deduplication inline เพื่อลดความซ้ำซ้อนของข้อมูลบนดิสก์ ในระดับ block

อะไรคือความแตกต่างระหว่าง ZFS (หรืออาจจะเรียกได้ว่า Oracle ZFS) และ OpenZFS

ต้องบอกว่า ZFS และ OpenZFS นั้นเกิดมาจาก source code ตัวเดียวกัน หลังจากแยกกันในปี 2010 ทั้ง Oracle และ ชุมชน opensource ก็ได้ต่างเพิ่มความสามารถเข้าไปใน ZFS ปัจจุบันนี้ หากพูดถึง Oracle ZFS นั้นจะต้องบอกว่า เป็นลิขสิทธิ์ที่ถูกติดตั้งได้บน ฮาร์ดแวร์ของ Oracle เท่านั้น เช่นใน Oracle Solaris และ Oracle ZFS Appliance ในขณะที่ OpenZFS นั้นเป็น Opensource

  • Oracle ZFS นั้นอยู่ใน Oracle Solaris Kernel โดยตรง และ มีฟีเจอร์เช่น tuning การวิเคราะห์ และ การเข้ารหัส
  • OpenZFS มีฟีเจอร์เช่น dRAID, ZSTD, Block Cloning, Encryption native, L2ARC

 

การใช้งานร่วมกับ Proxmox VE 

ZFS นั้นเป็น File system หนึ่งในหลายๆ แบบ ที่ Proxmox VE สนับสนุน ท่านสามารถเลือก ZFS ได้ ในส่วนของการ boot การเก็บ VM ได้เลย กรณีที่ท่านไม่มี dual-boot device และ แน่นอนว่า file system แบบนี้สนับสนุนการทำ snapshot ทำให้ท่านได้รับประโยชน์ในการทำสำเนาข้อมูลได้อย่างเต็มที่

บริษัท AVESTA ให้บริการติดตั้ง จำน่าย Proxmox VE เราเป็นตัวแทนตรง และ ได้รับการไว้วางใจ ให้ติดตั้งกับบริษัทน้อยใหญ่มากมาย สนใจสอบถาม Line OA : @avesta.co.th หรือ Email : [email protected]

 

Migrate VMware virtual machines to Hyper-V in WAC

Windows Admin Center หรือ WAC นั้นเป็นเครื่องมือในการบริหาร Windows Server ที่เข้ามาแทน Microsoft...

Read more »

Understanding UUID

UUID นั้นต้องเรียกได้ว่ามีข้อถกเถียงกันมานานมา ในการใช้ในการเขียนโปรแกรมและการออกแบบดาต้าเบส วันนี้เราจะไปศึกษาว่ามันคืออะไร และ ในการออกแบบฐานข้อมูลมันเข้ามามีบทบาทอย่างไร UUID คืออะไร UUID ย่อมาจาก...

Read more »

วันสิ้นสุด License Perpetual ของ VMware มาถึงแล้ว รีบย้ายไป Proxmox VE กันเถอะ

ตอนที่ VMware ประกาศว่าจะออก ESXi 9 มานั้น ทุกคนในวงการก็คิดว่า มันน่าจะมาพร้อมการอัพเดทบางส่วนเหมือนทุกๆ ครั้งที่ผ่านมาเช่น การเพิ่มการสนับสนุนฮาร์ดแวร์...

Read more »

Garage ทางเลือกในการแทนที่ MinIO

MinIO นั้นเป็นซอฟต์แวร์ที่จะทำให้เราสามารถเก็บข้อมูลในลักษณะที่เป็น Object ได้ และ เรียกว่าเป็นตัวเลือกที่มีอยู่ไม่มากนักในท้องตลาดหากท่านต้องการจะสร้าง Object Storage Server เพื่อใช้ภายในองค์กร...

Read more »

Time Range Booking System

Time Range Booking คืออะไร และทำไมธุรกิจยุคใหม่จำเป็นต้องใช้ ในยุคที่ลูกค้าคาดหวัง ความรวดเร็วและความแม่นยำ มากขึ้น ระบบจองแบบเดิมที่เลือกแค่วันที่หรือรอบเวลา (slot...

Read more »

เพิ่มขีดความสามารถของ WordPress ด้วยการเชื่อมต่อ External API

WordPress คืออะไร WordPress คือระบบ CMS (Content Management System) แบบโอเพนซอร์ส ที่ใช้สำหรับสร้างเว็บไซต์โดยไม่จำเป็นต้องเขียนโค้ดเองเลย...

Read more »