Pertanyaan Kinerja RAID Praktis?


Saya selalu berpikir hal berikut ini menjadi aturan umum untuk RAID:

  • RAID 0: Performa terbaik untuk BACA dan TULIS dari pengupasan, risiko terbesar
  • RAID 1: Redundant, decent for READ (Saya percaya ini dapat membaca dari berbagai bagian file dari berbagai hard drive), bukan yang terbaik untuk TULIS
  • RAID 0 + 1 (01): menggabungkan redundansi RAID 1 dengan kinerja RAID 0
  • RAID 1 + 0 (10): versi RAID 0 + 1 yang sedikit lebih baik
  • RAID 5: kinerja BACA yang baik, kinerja WRITE yang buruk, berlebihan

APAKAH ASUMSI INI BENAR? (dan bagaimana mereka dibandingkan dengan pengaturan JBOD untuk kinerja R / W IO)

Apakah konfigurasi praktis RAID tertentu lebih baik untuk aplikasi yang berbeda: game, editing video, database (Acccess atau SQL)?

Saya berpikir tentang hard disk drive tetapi apakah ini berlaku untuk hard disk solid state juga?


7
2018-06-02 06:38


asal


Pemahaman saya tentang redundansi dari masing-masing kelas RAID cukup bagus, saya hanya tidak yakin tentang membaca dan menulis kinerja I / O. - wag2639
Adapun JBOD, saya tahu itu tidak menawarkan kinerja atau redundansi, saya hanya menyebutkannya sebagai referensi dasar. - wag2639


Jawaban:


Raid 0. Kecepatan baca dan tulis yang hebat. Risiko kegagalan meningkat seiring meningkatnya jumlah anggota disk. Tanpa paritas.

Raid 1. Kecepatan baca yang luar biasa hanya jika driver diterapkan dengan benar - Jika Anda menggunakan pengontrol raid Areca dan LSI, mereka dapat memberikan kemampuan membaca yang hampir sama untuk Raid 1 set sebagai Raid 0 set (dalam 10%). Perhatikan bahwa untuk solusi penggerebekan perangkat lunak ada dua jenis, perangkat lunak OS dan Motherboard-perangkat lunak.

Kebanyakan Raid tipe motherboard tidak menawarkan kinerja membaca Raid 1 yang baik. Terakhir kali saya memeriksa Windows dan Linux tidak memiliki implementasi Raid 1 yang baik juga. BSD menerapkan implementasi Raid 1 dengan benar yang menggunakan metode roundrobin read.

Singkatnya, gunakan Raid 1 untuk redundansi, dan untuk kecepatan baca jika Anda menggunakan pengontrol lanjutan.

Raid 1/0 & Raid 0/1. Ini adalah kombinasi. Katakanlah Anda memiliki 10 disk. Raid 1/0 adalah bahwa ada cermin di setiap set: Set A (1 + 2), Set B (3 + 4), Set C (5 + 6), Set D (7 + 8), Set E (9+ 10), lalu Lakukan set strip di 5 set (AE). Dengan cara ini, masing-masing set dapat memiliki satu kegagalan drive, tetapi jika dua drive gagal dalam set yang sama Anda selesai.

Raid 0/1 adalah memiliki strip A (1 + 2 + 3 + 4 + 5) dan mengatur B (6 + 7 + 8 + 9 + 10) dan mencerminkan dua set. Dengan cara ini, jika drive 2 dan drive 9 gagal, sebagian besar pengendali menganggap ini sebagai kegagalan total (yang, pada kenyataannya, Anda masih memiliki semua data).

Ada sedikit perbedaan kinerja antara keduanya tapi saya tidak berpikir Anda biasanya mendapatkan keduanya dari kontroler Raid.

Raid 5. tas sangat campuran: untuk membaca berurutan, lebih cepat dari serangan 1/0, dan untuk pembacaan acak itu sedikit lebih lambat dari itu. Perhatikan bahwa kinerja razia 5 sangat tergantung pada kecepatan pengontrol (mis. Anda tidak dapat berharap banyak dalam serangan onboard).

Raid 6. Redundansi meningkat dibandingkan dengan Raid 5. dua drive dapat gagal kapan saja, dan ketika membangun kembali larik setelah 1 drive gagal masih ada redundansi (perhatikan bahwa ketika raid 5 drive gagal, lariknya mirip dengan razia 0 - drive mana pun gagal = total loss ).

JBOD. Tidak ada keuntungan yang bisa saya pikirkan.


12
2018-06-08 03:23



terima kasih .. jadi dari apa yang saya baca, menggunakan motherboard konsumen umum dengan tujuan kinerja game, razia 0 terbaik tanpa mendapatkan raid controller khusus yang terpisah? (Saya tidak peduli jika saya harus menginstal ulang os + program dan data akan berada di tempat lain, kemungkinan raid 5 array) - wag2639
kamu sangat benar. Meskipun saya takut bahwa kinerja menggunakan serangan motherboard tidak akan sangat berbeda dari menggunakan serangan perangkat lunak berbasis OS (meskipun, tentu saja, perbedaannya adalah bahwa drive sistem Anda tidak dapat digerebek dalam serangan perangkat lunak berbasis OS). Juga, raid5 kinerja dalam serangan motherboard menyedihkan (ke bawah 15-20MB / s dalam beberapa kasus!) - bubu


Seperti yang disiratkan oleh pertanyaan Anda, tidak ada konfigurasi RAID "terbaik", hanya yang terbaik untuk serangkaian keadaan tertentu, dengan biaya sering menjadi salah satu faktor yang paling penting.

Tanpa pergi ke hal-hal kecil dari pengendali dan perangkat lunak, di sini akan menjadi aturan praktis saya.

RAID 0 adalah yang tercepat karena Anda dapat membaca dari dan menulis ke banyak disk sekaligus, dan tidak ada ruang yang "terbuang" untuk redundansi. Kehilangan disk dan Anda kehilangan set, jadi RAID 0 hanya boleh digunakan pada mesin yang tidak Anda pedulikan, atau mudah dipulihkan dan tidak mengandung data yang Anda hargai. Sebuah mesin judi mungkin cocok dengan skenario ini, meskipun sejujurnya, perbedaan kecepatan tidak begitu terlihat bahwa saya akan bersedia menerima peningkatan risiko karena harus membangun kembali mesin. Ini juga dapat berguna untuk area "goresan" yang sangat cepat jika Anda memiliki perangkat lunak yang membutuhkan hal semacam itu.

RAID 1 adalah pengaturan cermin yang sangat umum, biasanya dari 2 disk. Membaca umumnya hanya dua kali lebih cepat dari satu disk, sementara menulis hanya sedikit lebih lambat daripada satu disk. Pada server, RAID 1 adalah pilihan yang sangat baik untuk file sistem operasi Anda. Ini juga merupakan pilihan yang baik ketika Anda membutuhkan redundansi, kebutuhan penyimpanan Anda tidak begitu besar sehingga memerlukan RAID 5 dan Anda mungkin mendapat manfaat dari kecepatan baca ekstra (file log basis data biasanya ditempatkan pada RAID 1).

RAID 2 hingga 4 (tidak dalam pertanyaan) umumnya tidak digunakan kecuali oleh produk vendor tertentu di sisi perusahaan.

RAID 5 adalah kompromi antara tidak menyia-nyiakan terlalu banyak ruang pada redundansi dan masih mendapatkan kinerja tambahan disk ekstra. Kecepatan baca sangat bagus karena semua disk dapat berpartisipasi. Kecepatan menulis kadang-kadang bisa menjadi masalah dengan RAID 5, meskipun saya pikir ini kadang-kadang dibesar-besarkan tergantung pada situasi. Bahkan dengan perangkat keras yang melakukan perhitungan paritas, penulisan acak kecil menderita pada RAID 5 karena setiap operasi penulisan logika memerlukan 4 I / Os (baca dari disk data, baca dari paritas disk, tulis disk data, tulis paritas disk). Pilih RAID 5 ketika Anda ingin memaksimalkan jumlah penyimpanan yang Anda dapatkan dari set disk saat masih memiliki tingkat keamanan yang baik. Hindari ketika aplikasi Anda memiliki kebutuhan kinerja tinggi dan membutuhkan banyak tulisan acak kecil (virtual machine hard disk, file data database). Juga perhatikan bahwa disk besar modern memerlukan waktu loooooong untuk membangun kembali ketika mereka gagal sebagai bagian dari set RAID 5, dan itu membuat data Anda berisiko lebih lama untuk kegagalan disk kedua. RAID 6 dapat mengurangi risiko ini dengan mengorbankan kinerja penulisan acak yang lebih buruk.

RAID 1/0 dan 0/1 memiliki cukup banyak karakteristik kinerja yang sama. 1/0 lebih disukai karena kegagalan berarti membangun kembali hanya sepasang disk yang terlibat daripada seluruh strip disk. RAID 1/0 adalah konfigurasi tujuan umum tercepat dari yang disebutkan dalam pertanyaan. Kinerja baca dan tulis keduanya bagus (baca dapat terjadi dari semua disk sekaligus, menulis harus terjadi pada banyak disk tetapi tidak perlu membaca / membaca / menulis / menulis siklus seperti RAID 5) meskipun RAID 5 dapat menang dalam keadaan tertentu. RAID 1/0 adalah (tidak mengejutkan) juga yang paling mahal di hampir semua kasus. Seharusnya hanya digunakan ketika kinerja sangat penting, data sangat berharga, dan aplikasi tidak memiliki toleransi untuk waktu henti. Seringkali server database (atau setidaknya file data mereka) membuat kandidat yang baik untuk RAID 1/0. Saya juga lebih suka menempatkan mesin virtual pada RAID 1/0 jika akan ada banyak dari mereka atau mereka menjalankan aplikasi intensif disk yang saya sangat peduli.

Solid State Drive memang dapat dimasukkan ke konfigurasi RAID, terutama untuk nilai redundansi. Banyak SSD yang dapat mengungguli bus (SATA) yang dilekatkan, terutama untuk operasi baca, sehingga efek kinerja RAID kurang menarik dengan SSD.


2
2018-06-08 18:09





Jika Anda membeli pengendali serangan perangkat keras, gunakan RAID5. Ini memiliki overhead yang paling sedikit dan pengendali serangan hardware akan hampir menghilangkan biaya tulis tulis karena menghitung bit paritas dalam perangkat keras. Raid5 juga membaca beberapa disk secara simultan meningkatkan kecepatan baca dan tulis.

Ya, ini juga berlaku untuk drive Solid state juga. Pengujian SSD di Raid0 menunjukkan peningkatan kecepatan hampir linier.

Raid5 sejauh ini merupakan teknologi yang paling banyak digunakan di dunia server, tetapi hanya laptop dengan hanya 2 hard drive yang saya sarankan untuk mirror1.

JBOD tidak memiliki redundansi jika hard drive gagal tetapi tergantung pada pengaturan dapat menggariskan data untuk meningkatkan kinerja seperti razia.


0
2018-06-02 07:22



JBOD tidak dapat stripe biasanya karena itu dirancang untuk digunakan dengan disk dengan ukuran yang berbeda - jika Anda memiliki ukuran yang sama, Anda seharusnya sudah menggunakan RAID 1 atau RAID 0 sebagai gantinya. - Darth Android