Berlaku untuk: Azure Stack HCI, versi 22H2 dan 21H2; Windows Server 2022, Windows Server 2019
Artikel ini menjelaskan opsi ketahanan yang tersedia dan menguraikan persyaratan skala, efisiensi penyimpanan, dan keuntungan umum dan tradeoff masing-masing.
Ikhtisar
Ruang Penyimpanan Langsung memberikan toleransi kesalahan, sering disebut "ketahanan," untuk data Anda. Implementasinya mirip dengan RAID, kecuali didistribusikan di seluruh server dan diimplementasikan dalam perangkat lunak.
Seperti halnya RAID, ada beberapa cara berbeda yang dapat diterapkan oleh Storage Spaces, yang membuat perbedaan dalam tradeoff antara toleransi kesalahan, efisiensi penyimpanan, dan kompleksitas komputasi. Ini secara luas termasuk dalam dua kategori: "pencerminan" dan "paritas," yang terakhir kadang-kadang disebut "pengkodean penghapusan."
Pencerminan
Pencerminan memberikan toleransi kesalahan dengan menyimpan beberapa salinan semua data. Ini paling mirip DENGAN RAID-1. Bagaimana data diatur secara berlapis dan ditempatkan bukan hal yang sederhana (lihat blog ini untuk mempelajari lebih lanjut), tetapi sangat benar bahwa setiap data yang disimpan menggunakan pencerminan ditulis beberapa kali secara keseluruhan. Setiap salinan ditulis ke perangkat keras fisik yang berbeda (drive yang berbeda di server yang berbeda) yang diasumsikan gagal secara independen.
Anda dapat memilih antara dua jenis pencerminan - "dua arah" atau "tiga arah."
Cermin dua arah
Pencerminan dua arah menulis dua salinan dari semuanya. Efisiensi penyimpanannya adalah 50 persen - untuk menulis 1 TB data, Anda memerlukan setidaknya 2 TB kapasitas penyimpanan fisik. Sama halnya, Anda membutuhkan setidaknya dua perangkat keras 'domain kesalahan' — dengan Storage Spaces Direct, itu berarti dua server.
cermin dua arah
Peringatan
Jika Anda memiliki lebih dari dua server, sebaiknya gunakan pencerminan tiga arah sebagai gantinya.
Cermin tiga arah
Pencerminan tiga arah membuat tiga salinan untuk setiap data. Efisiensi penyimpanannya adalah 33,3 persen - untuk menulis data 1 TB, Anda memerlukan setidaknya 3 TB kapasitas penyimpanan fisik. Demikian juga, Anda memerlukan setidaknya tiga domain kesalahan perangkat keras - dengan Storage Spaces Direct, itu berarti tiga server.
Pencerminan tiga arah dapat dengan aman mentolerir setidaknya dua masalah perangkat keras (drive atau server) sekaligus. Misalnya, jika Anda me-reboot satu server ketika tiba-tiba drive atau server lain gagal, semua data tetap aman dan terus dapat diakses.
cermin tiga arah
Paritas
Pengodean paritas, sering disebut "pengodean penghapusan," memberikan toleransi kesalahan menggunakan aritmatika bitwise, yang bisa mendapatkan yang sangat rumit. Cara kerja ini kurang jelas daripada mencerminkan, dan ada banyak sumber daya online yang bagus (misalnya, Panduan Dummies pihak ketiga ini untuk Menghapus Coding) yang dapat membantu Anda mendapatkan ide. Cukup untuk mengatakan itu memberikan efisiensi penyimpanan yang lebih baik tanpa mengorbankan toleransi kesalahan.
Ruang Penyimpanan menawarkan dua rasa paritas - paritas "tunggal" dan paritas "ganda", yang terakhir menggunakan teknik canggih yang disebut "kode rekonstruksi lokal" pada skala yang lebih besar.
Penting
Sebaiknya gunakan pencerminan untuk sebagian besar beban kerja yang sensitif terhadap performa. Untuk mempelajari selengkapnya tentang cara menyeimbangkan performa dan kapasitas tergantung pada beban kerja Anda, lihat Rencanakan volume.
Paritas tunggal
Paritas tunggal hanya menyimpan satu simbol paritas bitwise, yang memberikan toleransi kesalahan terhadap hanya satu kegagalan pada satu waktu. Ini paling mirip DENGAN RAID-5. Untuk menggunakan paritas tunggal, Anda memerlukan setidaknya tiga domain kesalahan perangkat keras - dengan Storage Spaces Direct, itu berarti tiga server. Karena pencerminan tiga arah memberikan lebih banyak toleransi kesalahan pada skala yang sama, kami mencegah penggunaan paritas tunggal. Tapi, itu ada jika Anda bersikeras menggunakannya, dan sepenuhnya didukung.
Peringatan
Kami mencegah penggunaan paritas tunggal karena hanya dapat dengan aman mentolerir satu kegagalan perangkat keras pada satu waktu: jika Anda me-reboot satu server ketika tiba-tiba drive atau server lain gagal, Anda akan mengalami waktu henti. Jika Anda hanya memiliki tiga server, sebaiknya gunakan pencerminan tiga arah. Jika Anda memiliki empat atau lebih, lihat bagian berikutnya.
Paritas ganda
Paritas ganda mengimplementasikan Reed-Solomon kode koreksi kesalahan untuk menyimpan dua simbol paritas bitwise, sehingga memberikan toleransi kesalahan yang sama dengan pencerminan tiga arah (yaitu hingga dua kegagalan sekaligus), tetapi dengan efisiensi penyimpanan yang lebih baik. Ini paling mirip DENGAN RAID-6. Untuk menggunakan paritas ganda, Anda memerlukan setidaknya empat domain kesalahan perangkat keras – dengan Storage Spaces Direct, yang berarti empat server. Pada skala tersebut, efisiensi penyimpanan adalah 50% - untuk menyimpan data 2 TB, Anda memerlukan kapasitas penyimpanan fisik 4 TB.
Efisiensi penyimpanan paritas ganda meningkatkan lebih banyak domain kesalahan perangkat keras yang Anda miliki, dari 50 persen hingga 80 persen. Misalnya, pada tujuh (dengan Storage Spaces Direct, itu berarti tujuh server) efisiensi melompat ke 66,7 persen - untuk menyimpan data 4 TB, Anda hanya memerlukan kapasitas penyimpanan fisik 6 TB.
Lihat bagian Ringkasan untuk efisiensi kode rekonstruksi dua pihak dan lokal pada semua skala.
Kode rekonstruksi lokal
Ruang Penyimpanan memperkenalkan teknik canggih yang dikembangkan oleh Microsoft Research yang disebut "kode rekonstruksi lokal," atau LRC. Pada skala besar, paritas ganda menggunakan LRC (Local Reconstruction Codes) untuk membagi proses pengodean/dedekodeannya menjadi beberapa kelompok yang lebih kecil, guna mengurangi beban kerja yang diperlukan untuk melakukan penulisan atau memulihkan dari kegagalan.
Dengan hard disk drive (HDD) ukuran grup adalah empat simbol; dengan solid-state drive (SSD), ukuran grup adalah enam simbol. Misalnya, inilah tampilan tata letak dengan hard disk drive dan 12 domain kesalahan perangkat keras (artinya 12 server) - ada dua grup yang terdiri dari empat simbol data. Ini mencapai efisiensi penyimpanan 72,7 persen.
Volume Storage Spaces Direct dapat terdiri dari bagian yang menggunakan metode mirror dan bagian yang menggunakan metode paritas. Penulisan data pertama-tama dilakukan di bagian pencerminan dan secara bertahap dipindahkan ke bagian paritas kemudian. Secara efektif, ini menggunakan pencerminan untuk mempercepat penghapusan pengkodan.
Untuk menggabungkan mirror tiga arah dan paritas ganda, Anda memerlukan setidaknya empat domain kesalahan, yang berarti empat server.
Efisiensi penyimpanan paritas yang dipercepat cermin berada di antara apa yang akan Anda dapatkan dari menggunakan semua cermin atau semua paritas, dan tergantung pada proporsi yang Anda pilih.
Penting
Sebaiknya gunakan pencerminan untuk sebagian besar beban kerja yang sensitif terhadap performa. Untuk mempelajari lebih lanjut tentang cara menyeimbangkan performa dan kapasitas bergantung pada beban kerja Anda, lihat Rencanakan volume.
Ringkasan
Bagian ini merangkum jenis ketahanan yang tersedia di Ruang Penyimpanan Langsung, persyaratan skala minimum untuk menggunakan setiap jenis, berapa banyak kegagalan yang dapat ditoleransi setiap jenis, dan efisiensi penyimpanan yang sesuai.
Jenis ketahanan
Ketahanan
Toleransi kegagalan
Efisiensi penyimpanan
Cermin dua arah
1
50.0%
Cermin tiga arah
2
33.3%
Paritas ganda
2
50,0% - 80,0%
Campuran
2
33.3% - 80.0%
Persyaratan skala minimum
Ketahanan
Domain kesalahan minimum yang diperlukan
Cermin dua arah
2
Cermin tiga arah
3
Paritas ganda
4
Campuran
4
Tip
Kecuali Anda menggunakan sasis atau toleransi kesalahan rak, jumlah domain kesalahan mengacu pada jumlah server. Jumlah drive di setiap server tidak memengaruhi jenis ketahanan mana yang dapat Anda gunakan, selama Anda memenuhi persyaratan minimum untuk Ruang Penyimpanan Langsung.
Efisiensi paritas ganda untuk implementasi hibrida
Tabel ini menunjukkan efisiensi penyimpanan paritas ganda dan kode rekonstruksi lokal di setiap skala untuk penyebaran hibrid, yang berisi hard disk drive (HDD) dan solid-state drive (SSD).
Domain kesalahan
Tata letak
Efisiensi
2
–
–
3
–
–
4
RS 2+2
50.0%
5
RS 2+2
50.0%
6
RS 2+2
50.0%
7
RS 4+2
66,7%
8
RS 4+2
66,7%
9
RS 4+2
66,7%
10
RS 4+2
66,7%
11
RS 4+2
66,7%
12
LRC (8, 2, 1)
72,7%
13
LRC (8, 2, 1)
72,7%
14
LRC (8, 2, 1)
72,7%
15
LRC (8, 2, 1)
72,7%
16
LRC (8, 2, 1)
72,7%
Efisiensi paritas ganda untuk penerapan all-flash
Tabel ini menunjukkan efisiensi penyimpanan paritas ganda dan kode rekonstruksi lokal di setiap skala untuk penyebaran all-flash, yang hanya berisi solid-state drive (SSD). Tata letak paritas dapat menggunakan ukuran grup yang lebih besar dan mencapai efisiensi penyimpanan yang lebih baik dalam konfigurasi all-flash.
Domain kesalahan
Tata letak
Efisiensi
2
–
–
3
–
–
4
RS 2+2
50.0%
5
RS 2+2
50.0%
6
RS 2+2
50.0%
7
RS 4+2
66,7%
8
RS 4+2
66,7%
9
RS 6+2
75,0%
10
RS 6+2
75,0%
11
RS 6+2
75,0%
12
RS 6+2
75,0%
13
RS 6+2
75,0%
14
RS 6+2
75,0%
15
RS 6+2
75,0%
16
LRC (12, 2, 1)
80.0%
Contoh
Kecuali Anda hanya memiliki dua server, sebaiknya gunakan pencerminan tiga arah dan/atau paritas ganda, karena mereka menawarkan toleransi kesalahan yang lebih baik. Secara khusus, mereka memastikan bahwa semua data tetap aman dan terus dapat diakses bahkan ketika dua domain kesalahan - dengan Ruang Penyimpanan Langsung, itu berarti dua server - dipengaruhi oleh kegagalan bersamaan.
Contoh di mana semuanya tetap online
Enam contoh ini menunjukkan toleransi pencerminan tiga arah dan/atau paritas ganda yang dapat tangani.
1. Satu disko hilang (termasuk disko cache)
2. Satu server hilang
contoh-ketahanan-kesalahan-1-dan-2
3. Satu server dan satu drive hilang
4. Dua drive hilang di server yang berbeda
contoh-toleransi-kesalahan-3-dan-4
5. Lebih dari dua drive hilang, asalkan hingga dua server yang terpengaruh
6. Dua server hilang
contoh-ketahanan-kesalahan-5-dan-6
... dalam setiap kasus, semua volume tetap online. (Pastikan kluster Anda mempertahankan kuorum.)
Contoh di mana semuanya offline
Selama masa pakainya, Ruang Penyimpanan dapat mentolerir sejumlah kegagalan, karena memulihkan ketahanan penuh setelah masing-masing, dengan catatan diberikan waktu yang memadai. Namun, paling banyak dua domain kesalahan dapat dengan aman dipengaruhi oleh kegagalan pada saat tertentu. Oleh karena itu, berikut adalah contoh-contoh dari apa yang tidak dapat ditoleransi oleh pencerminan tiga arah dan/atau paritas ganda .
7. Drive hilang dalam tiga server atau lebih sekaligus