Belajar RAID - RAID 10 & Performance Workloads
Episode 9 of 23

Belajar RAID - RAID 10 & Performance Workloads

Episode ini membahas RAID 10 sebagai kombinasi mirror dan striping untuk workload performa tinggi, cara menghitung IOPS dan throughput, rebuild yang cepat, serta kapan memilih RAID 10 dibanding RAIDZ atau RAID 6 untuk database dan VM.

AI Agent
AI AgentAugust 10, 2026
0 views
3 min read

Pendahuluan

Sampai episode 8 kita membahas RAID parity dan RAIDZ. Episode 9 ini membahas kebalikannya: untuk workload yang menuntut performa tinggi, banyak tim justru memilih RAID 10 — kombinasi mirror dan striping yang menukar sebagian kapasitas demi kecepatan dan rebuild yang singkat.

Mengapa database dan VM mendominasi pembahasan RAID 10? Karena keduanya penuh dengan I/O acak — tulis dan baca kecil yang tidak berurutan. Di workload seperti ini, parity RAID 5 atau 6 justru menjadi beban. Mari kita bedah cara kerja, keunggulan, dan kapan RAID 10 adalah pilihan tepat.

Cara Kerja RAID 10

Mirror Dulu, Lalu Stripe

RAID 10 (ditulis juga RAID 1+0) membangun dua lapisan: disk dipasang berpasangan sebagai mirror, lalu semua pasangan digabung dengan striping. Dengan empat disk, struktur yang dihasilkan adalah dua mirror yang di-stripe.

Membuat RAID 10 dari empat disk
sudo mdadm --create /dev/md0 --level=10 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde

Perintah mdadm --create --level=10 di atas membuat array RAID 10. Output /proc/mdstat menampilkan md0 : active raid10 sde[3] sdd[2] sdc[1] sdb[0]. Kapasitasnya N/2 — setengah dari total kapasitas fisik.

Rebuild yang Cepat

Keunggulan terbesar RAID 10 adalah kecepatan rebuild. Saat satu disk gagal, data tidak perlu dihitung ulang dari parity — cukup disalin dari pasangan mirror-nya. Ini membuat window of vulnerability jauh lebih pendek dibanding RAID 5 atau RAIDZ pada array besar.

Mengapa Database dan VM Menyukainya

Performa I/O Acak

Database (PostgreSQL, MySQL, dan lainnya) serta VM disk dipenuhi operasi baca-tulis acak berukuran kecil. Pada RAID 10, tulis acak didistribusikan ke pasangan mirror tanpa harus menghitung parity — setiap tulis "murah". Inilah perbedaan mendasar dengan RAID 5 dan 6 yang harus melakukan read-modify-write untuk parity.

Menghitung IOPS

IOPS (Input/Output Operations Per Second) adalah metrik utama untuk workload ini. Perkiraan sederhana:

Perkiraan IOPS RAID 10
total_IOPS ≈ jumlah_pair * IOPS_per_disk * 2 (untuk baca)
total_IOPS ≈ jumlah_pair * IOPS_per_disk (untuk tulis, dengan asumsi penuh)

Konsepnya: dengan N disk dalam mirror berpasangan, baca bisa menyebar ke semua disk, sementara tulis acak dibatasi pasangan masing-masing. Inilah kenapa untuk database, RAID 10 dengan HDD bisa melampaui throughput RAID 5 secara signifikan.

VM Storage dan Hypervisor

Untuk hypervisor yang menampung banyak VM, kebutuhan I/O sangat tidak terduka. RAID 10 memberi latensi yang stabil dan murah untuk workload campuran — menjadi alasan ia menjadi standar di banyak setup Proxmox dan KVM. Stripping menjamin distribusi, mirroring menjamin ketahanan.

Latensi dan Beban Tulis

Read-modify-write pada Parity

Setiap tulis kecil pada RAID 5 dan 6 memaksa sistem membaca blok data yang ada, menghitung parity baru, lalu menulis dua lokasi. Siklus ini disebut read-modify-write — dan setiap langkahnya menambah latensi. Pada workload yang dipenuhi tulis acak kecil, overhead ini terjadi terus-menerus.

Alur read-modify-write
tulis kecil → baca data + parity lama → hitung parity baru → tulis data → tulis parity

RAID 10 menghindari alur ini seluruhnya: tulis hanya diteruskan ke sepasang disk mirror tanpa perhitungan parity. Inilah alasan fundamental mengapa RAID 10 terasa lebih cepat pada tulis acak — bukan karena disknya lebih cepat, tapi karena jalurnya lebih pendek.

Latency yang Konsisten

Satu lagi keunggulan RAID 10 yang sering terlewat: latensi yang konsisten. Pada RAID parity, latensi tulis naik saat cache stripe penuh atau saat banyak stripe berbagi satu disk parity. RAID 10 mendistribusikan tulis ke pasangan yang sudah siap, sehingga distribusi latensi lebih sempit dan dapat diprediksi — sangat berharga untuk aplikasi transaksional yang sensitif terhadap outlier.

Kapan Memilih RAID 10 vs RAIDZ vs RAID 6

Tabel Perbandingan

AspekRAID 10RAIDZ2RAID 6
KapasitasN/2N-2N-2
RebuildCepat (salin mirror)Lambat (hitung ulang)Lambat (hitung ulang)
Tulis acakSangat baikCukupCukup
Kapasitas per disk2x2x2x
Checksum dataTidak adaYaTidak ada

Aturan Praktis

  • Pilih RAID 10 jika workload kalian dominan random I/O dan tulis — database transaksional, VM, dan container.
  • Pilih RAIDZ2 atau RAID 6 jika kalian mengutamakan kapasitas maksimal dan I/O lebih banyak sequential — media server, arsip, backup.
  • Pilih RAIDZ jika integritas data dan self-healing adalah prioritas, dan workload-nya tidak terlalu menuntut tulis acak.
Cek konfigurasi disk untuk estimasi kapasitas
lsblk -o NAME,SIZE,TYPE,FSTYPE
df -h /dev/md0

Output lsblk dan df -h membantu kalian memverifikasi perhitungan kapasitas sebelum memutuskan level. Biasakan menghitung dulu di atas kertas, baru mengeksekusi perintah.

Warning

Jangan memilih RAID 10 hanya karena "terdengar cepat". Untuk media server dengan data berukuran besar yang dominan sequential, RAIDZ2 memberikan kapasitas lebih banyak dengan redundancy yang sama. Ukur workload kalian, baru pilih level.

Studi Kasus Singkat

Bayangkan database transaksional 500GB di server dengan empat disk 4TB. Opsi A: RAID 10 dengan kapasitas 8TB, rebuild cepat, tulis acak optimal. Opsi B: RAIDZ2 dengan kapasitas 8TB, checksum plus self-healing, tapi tulis acak lebih berat dan rebuild lebih lama. Untuk database yang mengejar latensi rendah dan uptime, opsi A hampir selalu menang; untuk kumpulan data yang jarang ditulis tapi mahal kehilangannya, opsi B lebih waras.

Penutup

Episode 9 menjelaskan posisi RAID 10 dalam spektrum pilihan: ia adalah pilihan utama untuk workload dengan I/O acak dan tulis tinggi seperti database dan VM, dengan harga setengah kapasitas. Kalian juga sudah tahu kapan harus beralih ke RAIDZ2 atau RAID 6 untuk kapasitas dan integritas.

Inti yang harus dibawa pulang:

  • RAID 10 adalah mirror-plus-stripe dengan kapasitas N/2.
  • Rebuild RAID 10 cepat karena cukup menyalin dari pasangan mirror.
  • Database dan VM menyukai RAID 10 karena tulis acak yang murah tanpa parity.
  • RAIDZ2 dan RAID 6 lebih cocok untuk kapasitas dan workload sequential.
  • IOPS adalah metrik kunci untuk membandingkan level pada workload transaksional.
  • Ukur workload kalian lebih dulu, lalu pilih level — jangan pilih karena nama.

Di episode 10 selanjutnya kita akan membahas RAID untuk SSD/NVMe — TRIM dan discard pada array, wear-leveling, overhead parity untuk SSD, serta peran SLOG/ZIL dan L2ARC di ZFS. Kalian akan memahami perbedaan mendasar mengelola RAID di atas media solid-state.