Apakah RAID-Z pada satu hard disk drive bodoh?


18

Jelas, jika seluruh drive mati, maka RAID-Z pada disk tunggal tidak akan membantu. Tetapi bagaimana dengan jenis kesalahan lainnya?

Dari pengalaman saya, saya terkadang memiliki file yang tidak bisa saya baca. Pada Mac OS X, sistem akan hang untuk jangka waktu tertentu dan kemudian kembali dengan kesalahan. Saya memindahkan file di suatu tempat keluar dari jalan, dan saya berasumsi bahwa file itu memiliki sektor yang buruk atau blok yang buruk atau bahkan mungkin seluruh jalur yang buruk.

Saya kembali ke hari-hari floppy disk di mana mengelola kegagalan disk Anda dengan tangan adalah kegiatan yang umum. Tentu saja Anda akan mengganti floppy buruk sesegera mungkin, tetapi kadang-kadang Anda tidak bisa segera melakukannya sehingga praktiknya adalah menemukan area yang buruk, mengalokasikannya ke file dan kemudian tidak pernah menghapus file itu.

Pertanyaan pertama adalah bagaimana hard drive gagal? Apakah asumsi saya di atas valid? Benarkah blok buruk memburuk tetapi seluruh drive sebagian besar masih dapat digunakan? Jika itu masalahnya, maka sepertinya RAID-Z dapat memperbaiki blok buruk atau area buruk disk menggunakan paritas blok lain (area).

Kasing digunakan untuk cadangan. Jika saya mendorong data ke drive 8 TB seminggu sekali, apakah masuk akal untuk menganggapnya drive data 7 TB plus paritas 1 TB dengan harapan bahwa paritas ekstra akan membantu saya pulih dari bit busuk, bad sector, atau kegagalan drive lain yang dilokalkan?

Jika teorinya tidak cacat secara teknis, maka dapatkah ZFS dikonfigurasikan untuk melakukan ini?

Sunting: Saya melihat pertanyaan lain sebelum saya memposting pertanyaan ini. Membagi menjadi partisi yang terpisah di mana setiap partisi dikelompokkan bersama adalah satu opsi. Tetapi dalam konsep, mungkin saja memiliki peta blok untuk partisi N yang saling terkait sehingga satu garis, sementara secara logis akan melintasi N partisi secara fisik akan sangat berdekatan. Ini adalah inti dari pertanyaan saya, "bisakah ZFS dikonfigurasikan untuk melakukan ini?" yaitu hanya ZFS ... bukan ZFS dengan tipu daya partisi.


7
Jika Anda ingin redundansi disk tunggal, pertimbangkan untuk membuat arsip par2 . Dengan ZFS, Anda dapat mengatur copies=2, tetapi Anda akan dikenakan penalti penyimpanan 50% dengan melakukan itu. Selain itu, saya bukan ahli ZFS, tetapi intuisi saya (yang mungkin salah) memberi tahu saya bahwa ZFS tidak akan senang dengan solusi yang Anda usulkan. PAR2 adalah teknologi yang matang dan fleksibel. Menggunakannya tidak hanya akan memenuhi persyaratan paritas Anda, tetapi juga akan membiarkan Anda mengatur jumlah paritas berdasarkan setiap arsip jika diinginkan.
EEAA


Track pada HDD disebut silinder (karena mungkin ada lebih dari satu platter).
LawrenceC

1
Ketika drive menjadi buruk, itu cenderung menjadi proses percepatan - tingkat sektor menjadi buruk meningkat sampai seluruh drive tidak dapat digunakan. Jika drive mulai memburuk dan RAID-Z diam-diam memberikan kompensasi untuk Anda, Anda bisa memiliki cadangan yang berhasil ditulis tetapi ketika Anda pergi untuk memulihkannya, itu sudah melewati titik kegunaan. Saya lebih suka perangkat cadangan saya gagal keras saat saya mencadangkannya, segera setelah mulai memburuk, sehingga saya dapat menggantinya dan terus percaya bahwa apa yang berhasil ditulis dapat dibaca dengan percaya diri.
Anthony X

@ EEAA - terdengar seperti apa yang akan saya gunakan. Terima kasih. Dan, terima kasih untuk semua yang berkomentar.
pedz

Jawaban:


23

Karena paritas RAID-Z bekerja dengan memiliki blok paritas pada perangkat lain dalam kumpulan, Anda perlu mempartisi perangkat Anda menjadi N + 1, N + 2 atau N + 3 partisi berukuran sama, di mana partisi N berisi data dan 1/2 mengandung bit paritas.

Di atas partisi ini, Anda akan membuat zpool, dengan RAID-Z yang telah Anda pilih, dan kemudian membuat sistem file di zpool.

Jadi, secara teori ini berhasil. Dalam prakteknya ini akan membuat kinerja sistem file mengerikan, karena blok akibatnya pada file akan ditempatkan di perangkat ZPool yang berbeda, yang berada di partisi yang berbeda. Jadi, setelah membaca blok, HDD harus pindah ke area yang berbeda dari piring-piring HDD, baca blok selanjutnya, dll.

Jawabannya adalah: Ya, itu akan bodoh.


2
Bagaimana dengan melakukan ini pada SSD?
JFL

7
@ JFL: NAND flash, yang digunakan dalam SSD's memiliki masalah yang coba dipecahkan oleh solusi ini, yaitu blok individual yang sekarat. Faktanya, dengan NAND, ini adalah masalah besar sehingga semua pengontrol SSD secara eksplisit mengaturnya untuk Anda. Akibatnya, kesalahan yang paling umum terlihat pada SSD adalah hilangnya total seluruh perangkat, mungkin diikuti oleh perangkat yang gagal hanya baca. Tidak ada masalah yang mendapat manfaat dari solusi yang dicegah di sini.
MSalters

6
Selain itu, SSD menyusun ulang blok. Salah satu optimisasi level-pakai yang diterapkan adalah mengelompokkan tulisan bersama. Menulis berturut-turut ke partisi yang berbeda akan berakhir di blok hapus yang sama, jadi jika terjadi kegagalan blok hapus, Anda kehilangan manfaat menyimpan data yang sama beberapa kali.
liori
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.