Sistem File BTRFS dan Fiturnya
BTRFS (B-Tree FS atau penyebutan lain ‘Butter FS’) adalah sistem file Copy on Write (CoW) yang digunakan pada Linux untuk mengimplementasikan fitur-fitur canggih yang juga berfokus kepada toleransi kesalahan, perbaikan, dan administrasi yang mudah. Btrfs dilisensikan di bawah GPL dan terbuka untuk kontribusi dari siapa pun.
Fitur dari BTRFS
Copy-on-Write (CoW) data dan metadata
- Btrfs menyediakan penyimpanan file berbasis luas dengan ukuran file maksimum 50 TB dan ukuran sistem file maksimum 50 TB.
- Semua data dan metadata bersifat copy-on-write. Artinya, blok data tidak diubah pada disk. Btrfs hanya menyalin blok dan kemudian menulis salinannya ke lokasi yang berbeda.
- Tidak memperbarui lokasi asli menghilangkan risiko pembaruan sebagian atau kerusakan data selama listrik mati.
- Sifat copy-on-write Btrfs juga memfasilitasi fitur sistem file seperti replikasi, migrasi, backup, dan pemulihan data.
BTRFS Snapshots
- Snapshot adalah salinan dari seluruh subvolume Btrfs yang diambil pada suatu waktu tertentu.
- Btrfs memungkinkan Anda membuat snapshot yang dapat dibaca dan ditulis.
- Snapshot muncul sebagai direktori normal dan Anda dapat mengakses snapshot seperti yang Anda lakukan pada direktori lainnya.
- Snapshot yang dapat ditulis memungkinkan Anda untuk mengembalikan sistem file ke keadaan sebelumnya. Anda dapat mengambil snapshot, melakukan pemutakhiran sistem, dan mem-boot ulang ke dalam snapshot jika pemutakhiran menyebabkan masalah. Semua snapshot dapat ditulis secara default, tetapi Anda juga memiliki opsi untuk membuat snapshot hanya-baca.
- Snapshot read-only berguna untuk pencadangan dan kemudian dapat dihapus setelah pencadangan selesai.
Dukungan RAID bawaan
- Btrfs juga memiliki dukungan RAID bawaan untuk level RAID-0, RAID-1, dan RAID-10.
- RAID Btrf bukanlah RAID multi-disk seperti perangkat RAID perangkat lunak yang dibuat dengan menggunakan perintah mdadm. Itu juga tidak memblokir RAID karena tidak mencerminkan perangkat blokir.
- RAID Btrf hanya memastikan bahwa untuk setiap blok, ada jumlah salinan “x”. Untuk RAID-1, misalnya, Btrfs hanya menyimpan dua salinan dari semuanya di dua perangkat yang berbeda.
- Btrfs memelihara CRC untuk semua metadata dan data sehingga semuanya diperiksa untuk menjaga integritas data dari korupsi. Dengan konfigurasi RAID-1 atau RAID-10, jika checksum gagal pada pembacaan pertama, data ditarik dari salinan lain.
Mengubah ukuran dan defragmentasi online
- Btrfs memiliki pengubahan ukuran dan defragmentasi online.
- Anda dapat menambah atau menghapus perangkat saat sistem file tetap online.
- Ketika sebuah perangkat dihapus, luasan yang disimpan di dalamnya didistribusikan kembali ke perangkat lain dalam sistem file.
- Anda juga dapat mengganti perangkat saat Btrfs online. Btrfs menyeimbangkan kembali luasan di disk baru dan kemudian Anda dapat melepaskan disk lama dari array Btrfs.
Kompresi transparan
- Btrfs memiliki kompresi transparan dan saat ini mendukung dua metode kompresi: zlib dan LZO (default).
- LZO menawarkan rasio kompresi yang lebih baik, sedangkan zlib menawarkan kompresi yang lebih cepat.
- Btrfs dapat menentukan apakah blok dapat dikompresi dan, oleh karena itu, hanya dikompres jika memungkinkan.
- Anda mengaktifkan kompresi dan menentukan metode kompresi dengan menggunakan opsi pasang.
Kinerja Btrfs meningkat dengan penggunaan ssd
- Btrfs secara otomatis mendeteksi solid state drive (SSD) dan mematikan semua pengoptimalan untuk media rotasi.
- Misalnya, pada disk yang berputar, penting untuk menyimpan data terkait secara berdekatan untuk mengurangi pencarian. Ini membutuhkan siklus CPU untuk mendapatkan lokalitas data yang baik pada disk yang berputar, yang tidak sepenting SSD.
- Dukungan TRIM juga merupakan pengoptimalan untuk SSD. Ini memberi tahu SSD blok mana yang tidak lagi diperlukan dan tersedia untuk ditulis ulang.
Penyimpanan yang efisien untuk file kecil
- Btrfs menyediakan penyimpanan yang efisien untuk file kecil.
- Semua penyimpanan alamat sistem file Linux dalam ukuran blok, misalnya 4 KB. Dengan sistem file lain, file yang lebih kecil dari 4 KB membuang ruang yang tersisa.
- Btrfs menyimpan file yang lebih kecil ini langsung ke dalam metadata, sehingga memberikan keunggulan kinerja yang signifikan dibandingkan sistem file lain saat membuat dan membaca file kecil.
Referensi:
_____. btrfs. 24/08/2020
_____. Features of the “Btrfs” Filesystem. 24/08/2020