Назад | Перейти на главную страницу

Серверная конфигурация Software Raid Медленное чтение

У меня 6x WD Caviar Black 1,5 ТБ в программном RAID 10/1/0 (Centos 6.2 / mdadm)

cat /proc/mdstat
Personalities : [raid10] [raid0] [raid1]
md0 : active raid1 sdf2[5] sda2[0] sdb2[1] sdd2[3] sdc2[2] sde2[4]
      1023988 blocks super 1.0 [6/6] [UUUUUU]

md126 : active raid0 sde1[4] sda1[0] sdd1[3] sdb1[1] sdc1[2] sdf1[5]
      122873856 blocks super 1.2 64k chunks

md127 : active raid10 sde3[4] sda3[0] sdd3[3] sdb3[1] sdc3[2] sdf3[5]
      4330895808 blocks super 1.2 64K chunks 2 near-copies [6/6] [UUUUUU]

Информация:

md0 = /boot (size 1GB) (Raid 1)
md126 = swap (size 125 GB) (Raid 0)
md127 = / (size 4,1 TB) (Raid 10 Layout : near=2)

Когда я тестировал Raid 0 (6 дисков)

hdparm -t /dev/md126 
/dev/md126:
 Timing buffered disk reads:  1994 MB in  3.00 seconds = 664.59 MB/sec

Когда я тестирую Raid 1 (2 диска, остальные - запасные)

/dev/md0:
 Timing buffered disk reads:  384 MB in  3.00 seconds = 127.96 MB/sec

Когда я тестировал Raid 10 (6 дисков)

hdparm -t /dev/md127
/dev/md127:
 Timing buffered disk reads:  1064 MB in  3.00 seconds = 354.60 MB/sec

Я не уверен на 100%, может ли проблема быть в том, что рейд 10 на SD [a-f]3 Размер блока составляет всего 64 КБ, потому что я использую этот сервер только для MYSQL (база данных Mysql будет очень большой, потому что она у меня есть на этих больших жестких дисках, мне скоро понадобятся все ТБ)

Другой вопрос: О конфигурации сервера, я планирую купить новый сервер

Quadcore
1TB HDD
60GB SSD
8-16GB Ram

Теперь я думал поставить 1 ТБ (OS / Data) и SSD (MYSQL / SWAP)

Было бы хорошо, мне нужны только выступления, у меня достаточно резервных копий. (Я не планирую использовать SWAP, но если он будет использоваться, я подумал, что положил его на SSD, потому что он быстрее, чем на HDD)

Спасибо за помощь.

Прежде всего hdparm это не настоящая утилита для тестирования производительности, она недостаточно точна, чтобы продемонстрировать истинную производительность. Лучшие инструменты iozone или iometer.

Во-вторых, ваши результаты можно объяснить одним наблюдением.

  1. Количество дисков имеет значение.

Учти это:

  • В вашем тесте R0 для чтения было задействовано 6 дисков.
  • В вашем тесте R1 для чтения был задействован 1 диск.
  • В вашем тесте R10 для чтения было задействовано 3 диска.

В свете этого ваши результаты имеют довольно ясный смысл.

  • 6 дисков = 664 МБ / с (или 110,7 МБ / с на диск)
  • 1 диск = 128 МБ / с (128 МБ / с на диск)
  • 3 диска = 355 МБ / с (или 111,7 МБ / с на диск)

Это там линейная шкала. Это также довольно хорошо показывает, что «С RAID1 чтение выполняется с обоих наборов зеркала» на самом деле неверно для mdraid. Или, по крайней мере, не так, как они выполняются с HDPARM, которое обычно представляет собой одно долгое последовательное чтение, при котором предварительная выборка обеспечивает максимальную эффективность, а переход на другой диск не приводит к увеличению производительности.