Saya memiliki mdadm RAID-6 di server rumah saya WD Green HDD 5x1Tb. Kecepatan baca lebih dari cukup - 268 Mb / s dalam dd. Tetapi kecepatan tulis hanya 37,1 Mb / s. (Keduanya diuji melalui dd pada file 48Gb, ukuran RAM 1Gb, ukuran blok yang digunakan dalam pengujian adalah 8kb)
Bisakah Anda menyarankan mengapa kecepatan menulis sangat rendah dan apakah ada cara untuk memperbaikinya? Penggunaan CPU selama penulisan hanya 25% (yaitu setengah dari 1 inti Opteron 165) Tidak ada data penting bisnis di sana & server didukung oleh UPS.
mdstat adalah:
Personalities : [raid6] [raid5] [raid4]
md0 : active raid6 sda1[0] sdd1[4] sde1[3] sdf1[2] sdb1[1]
2929683456 blocks super 1.2 level 6, 1024k chunk, algorithm 2 [5/5] [UUUUU]
bitmap: 0/8 pages [0KB], 65536KB chunk
unused devices: <none>
Ada saran?
Hal-hal seperti penulisan kembali, penghalang, nobh tidak membantu. DD blocksize = 1M, 8M tidak mengubah apa pun. Sepertinya mdadm secara fisik membaca sektor untuk menghitung paritas bahkan jika itu tidak masalah ... Apakah itu benar?
Pembaruan: Degradasi kecepatan setelah perubahan cache strip sebenarnya karena 1 HDD mungkin gagal selama pengujian, bagus :-D
Diselesaikan: Setelah meningkatkan stripe cache & beralih ke bitmap eksternal, kecepatan saya adalah 160 Mb / s tulis, 260 Mb / s dibaca. :-D
Jawaban:
Sudahkah Anda mencoba menyetel / sys / block / mdX / md / stripe_cache_size?
Menurut posting forum ini (dalam bahasa Norwegia, maaf) "menyetel parameter ini lebih penting semakin banyak disk dan sistem yang lebih cepat Anda miliki":
Mengutip kecepatannya untuk perbandingan:
Server rumah saya memiliki disk yang hampir sama dengan Anda, menggunakan RAID 5:
Jadi sepertinya kinerja tulis berurutan adalah sekitar 50% dari kinerja membaca.
Untuk kinerja apa yang diharapkan, Wiki Linux Raid mengatakan tentang RAID 5:
Dan tentang RAID 6:
sumber
mencoba
echo 32768 > /sys/block/md0/md/stripe_cache_size
dan cek ;)
sumber