Jika Anda menjalankan Linux, dan terutama jika Anda menjalankan database di Linux, sulit untuk merekomendasikan sistem file apa pun selain ext3 lama biasa dalam beberapa tahun terakhir. Beberapa alternatif yang terlihat menarik pada satu titik – jfs, ReiserFS – benar-benar ditinggalkan pada titik ini. Salah satu yang hampir layak untuk beberapa waktu sekarang adalah XFS, awalnya merupakan proyek SGI. Dan kembali menjadi pusat perhatian minggu ini.
XFS telah menderita sejumlah masalah di masa lalu. Karena dirancang untuk perangkat keras yang stabil, pada awalnya tidak sekuat perangkat keras PC standar yang murah; cukup banyak yang baru dibersihkan dua tahun lalu. Itu memiliki masalah aneh dengan file memusatkan perhatian yang membuat beberapa orang takut. Itu diperlakukan sebagai warga negara kelas dua dalam distribusi Linux berorientasi bisnis seperti RedHat, mengharuskan Anda untuk mengkompilasi kernel Anda sendiri; bahkan pada CentOS yang tidak terlalu ketat, Anda harus melakukan beberapa langkah pengaturan yang tampak aneh untuk menambahkan dukungan XFS, dan hasilnya jelas tidak didukung. Dan sebagai salah satu sistem file pertama yang diaktifkan dan secara agresif menggunakan hambatan tulis, penerapan rentan terhadap drive dan pengontrol yang tidak menghapus cache saat diminta, masalah yang tidak sering Anda temukan lagi pada perangkat keras modern jika Anda mengonfigurasinya. itu benar (kecuali untuk SSD, tapi itu cerita lain).
Jadi mengapa repot-repot? Nah, kinerja adalah salah satu alasan utama. Saya menemukan diri saya bekerja dengan XFS lagi ketika bekerja dengan perangkat lunak Single Node Edition gratis Greenplum baru-baru ini. Greenplum memberi tahu saya dengan tegas bahwa mereka tidak merekomendasikan apa pun selain XFS untuk pemasangan berkinerja tinggi, dan mengingat kesamaan mendasar dengan komunitas PostgreSQL, saya merasa perlu untuk menyelidiki mengapa hal itu lebih penting lagi.
Waktu pada itu ternyata sempurna. Salah satu batasan lain dari ext3 adalah bahwa pada perangkat keras umum hanya akan mendukung penyimpanan 16TB. Karena Anda dapat menempatkan penyimpanan sebanyak itu di rak disk berukuran sedang sekarang, itu jelas tidak cukup untuk sistem kelas atas saat ini, apalagi beberapa tahun dari sekarang. Menyadari hal itu, RedHat secara serius menghidupkan kembali dukungan mereka untuk XFS dalam distribusi Linux mereka. RHEL 5.4, dirilis beberapa bulan lalu, menambahkannya kembali sebagai modul opsional untuk beberapa pelanggan. Anda masih tidak dapat menginstal di XFS, dan bahkan versi CentOS tidak mendukung penginstalan 32-bit, tetapi jelas membuat langkah menuju arus utama lagi.
Kemarin, beta publik pertama RHEL6 dirilis, dan XFS kembali menjadi set fitur utama. Itu duduk di sebelah ext4 pada daftar sistem file yang didukung, menunjukkan kesesuaiannya untuk instalasi besar pada khususnya. Jadi saya sekarang dapat memberi tahu orang-orang bahwa mereka memiliki dukungan XFS yang tersedia dalam bentuk yang agak kasar di RHEL/CentOS 5.4, dengan harapan bahwa ini adalah sistem file yang didukung kelas satu karena sistem ditingkatkan ke RHEL6 dan turunannya di masa mendatang, dan memiliki harapan bahwa akan dapat diandalkan.
Dengan dukungan Linux perusahaan dan dengan demikian sisi stabilitas yang dirasakan dari kode XFS akhirnya terkendali lagi, bagaimana dengan kinerjanya? Nah, ternyata Greenplum benar tentang XFS yang sepadan dengan kesulitan untuk menjalankannya. Saya mengambil server pengujian dan memformat ulang salah satu drive yang cukup cepat dengan tiga kombinasi sistem file/mount yang berbeda: ext3 order, ext3 journal, dan xfs. Setelah tiga bonnie++ 1.96 dijalankan dengan setiap sistem file, hasil yang saya lihat rusak seperti ini:
- ext3 dipesan: 39-58MB/dtk tulis, 44-72MB/dtk dibaca
- jurnal ext3: tulis 25-30MB/dtk, baca 49-67MB/dtk
- xfs: tulis 68-72MB/dtk, baca 72-77MB/dtk
Sementara hasil pembacaan ext3 terbaik mendekati tingkat yang sama dengan kemampuan xfs, rata-rata hasilnya jauh lebih baik. Dan hasil tulis setidaknya 25% lebih baik dalam semua kasus. Saya juga menyukai throughput yang lebih ketat dan dapat diprediksi; kinerja yang tidak konsisten adalah sesuatu yang sering saya hadapi di ext3.
Saya biasanya bukan orang yang menjadi pengadopsi awal rilis Linux baru, tetapi RHEL6 beta dengan dukungan XFS penuh telah menggantikan rilis Ubuntu baru yang sangat mengecewakan di bagian atas daftar OS yang akan saya instal selanjutnya. Tidak sering Anda melihat teknologi sistem file mendapatkan kesempatan kedua untuk mengesankan, tetapi XFS tampaknya telah membuat transisi yang tidak terduga kembali menjadi benar-benar relevan lagi, untuk saat ini. Saya tidak yakin berapa lama itu akan benar, dengan ext4 sudah tersedia dan btrfs mendekati kualitas produksi dengan baru-baru ini mencapai format disk yang stabil. Akan menarik untuk melihat bagaimana rangkaian pilihan sistem file yang dihidupkan kembali ini dimainkan di Linux.