filesystem untuk pengarsipan

10

Saya memiliki beberapa data read-only yang kompleks di sistem file saya. Ini berisi ribuan snapshot dari revisi tertentu dari repositori svn, dan output dari tes regresi. File identik di antara foto sudah diduplikasi menggunakan tautan keras. Dengan cara ini, kapasitas penyimpanan tidak perlu besar, tetapi masih mengkonsumsi banyak inode, dan ini membuat fsck sangat lama untuk sistem file utama saya.

Saya ingin memindahkan data ini ke sistem file lain, sehingga tidak terlalu mempengaruhi sistem file utama. Anda punya saran? Squashfs tampaknya menjadi pilihan yang memungkinkan, tetapi saya harus memeriksa apakah itu dapat menangani tautan keras secara efisien.

Wei-Yin
sumber
1
OS yang mana? Apakah Anda bersedia mengatur server file dengan OS yang berbeda?
Kevin Cantu

Jawaban:

5

Jika lambat, apakah Anda mencoba ext4? Mereka menambahkan beberapa fitur yang membuat fsck sangat cepat dengan tidak melihat inode yang tidak digunakan :

Fsck adalah operasi yang sangat lambat, terutama langkah pertama: memeriksa semua inode dalam sistem file. Dalam Ext4, pada akhir tabel inode masing-masing grup akan disimpan daftar inode yang tidak digunakan (dengan checksum, untuk keamanan), sehingga fsck tidak akan memeriksa inode tersebut. Hasilnya adalah total waktu fsck meningkat dari 2 hingga 20 kali, tergantung pada jumlah inode yang digunakan (http://kerneltrap.org/Linux/Improving_fsck_Speeds_in_Ext4). Harus diperhatikan bahwa ini fsck, dan bukan Ext4, yang akan membuat daftar inode yang tidak digunakan. Ini berarti bahwa Anda harus menjalankan fsck untuk mendapatkan daftar inode yang tidak terpakai yang dibangun, dan hanya proses fsck berikutnya yang akan lebih cepat (Anda perlu meneruskan fsck untuk mengonversi sistem file Ext3 ke Ext4). Ada juga fitur yang mengambil bagian dalam mempercepat fsck ini - "grup blok fleksibel"

tante
sumber
Terlihat menjanjikan. Saya akan mencobanya.
Wei-Yin
Saya melihat Anda menggunakan Ext3 sekarang. Anda dapat mengubah ext3 menjadi ext4 secara sepele (ada banyak muatan howtos di luar sana, pada dasarnya hanya memasang partisi ext3 dengan parameter khusus, lalu ext4 selamanya).
tante
7

Btrfs memiliki dukungan asli untuk snapshot, jadi Anda tidak perlu menggunakan tautan keras untuk deduplikasi. Anda dapat menciptakan kembali pengaturan Anda saat ini dengan membuat sistem file btrfs dan memuatnya dengan revisi paling awal yang Anda butuhkan, dan mengambil snapshot, dan kemudian memutarkan repositori ke depan ke setiap titik waktu yang Anda butuhkan snapshot dan mengambil snapshot pada setiap langkah. Ini harus lebih efisien daripada tautan keras, dan lebih mudah diatur juga.

Saya juga berpikir (walaupun saya jauh dari yakin akan hal ini) bahwa squashfs mendupuplikat file secara transparan, jadi meskipun itu tidak menangani tautan keras, Anda masih akan melihat manfaatnya. Jika Anda tidak perlu mengubah data dalam sistem file, maka squashfs mungkin adalah cara yang harus dilakukan, karena fsck kemudian dapat digantikan oleh md5sum;)

p-statis
sumber
6

Saya lebih suka XFS karena saya memiliki pengalaman yang sangat baik dengan sistem file ini. Tapi saya sangat merekomendasikan, Anda melakukan tes dengan data Anda dan semua sistem file yang disarankan.

ddeimeke
sumber
1
Terima kasih atas saran Anda. Saya menggunakan ext3 sekarang. Apakah fsck lebih cepat di XFS daripada ext3?
Wei-Yin
1
Ya, fsck lebih cepat. Tetapi seperti yang dikatakan tante juga, Anda harus memigrasikannya ke ext4.
ddeimeke
0

Saya tahu beberapa toko yang menggunakan DataDomain untuk tujuan itu.

Skrip kearsipan Anda bisa sangat sederhana (tar atau rsync dan cron, misalnya), dan Anda tidak perlu khawatir tentang mengelola tautan keras, atau direktori yang tidak dapat di-hardlink pada sebagian besar sistem file. Tidak perlu salinan tambahan kecuali untuk menghemat bandwidth. Semua keajaiban terjadi di bawahnya di dalam lapisan blok. Bukan hal yang aneh untuk meng-host data virtual senilai 15-20TB sementara hanya menggunakan ruang disk nyata senilai 1-2TB. Anda masih memiliki banyak sisa untuk cadangan disk.

Data akan dilayani melalui NFS atau iSCSI, tapi saya tidak yakin apakah itu masalah

Ketika FreeBSD mendapatkan ZFS v23, deduplikasi akan tersedia untuk kita semua.

Stefan Lasiewski
sumber
Penggunaan deduplikasi adalah memori yang mahal (dengan kemungkinan efek samping yang buruk jika memori berakhir, yang terjadi lebih sering daripada yang Anda bayangkan), tetapi juga hanya sangat membantu dalam kasus penggunaan tertentu (mungkin perusahaan). Namun, penggunaan snapshot ZFS akan berfungsi.
killermist