Как стать автором
Обновить

IOPSы

Время на прочтение2 мин
Количество просмотров1.6K
Всего голосов 17: ↑14 и ↓3+11
Комментарии34

Комментарии 34

НЛО прилетело и опубликовало эту надпись здесь
Размер слайса был увеличен в одном тесте, и уменьшен в другом.
Тесты ещё в процессе (я хочу составить табличку, чтобы понять закономерность).

Я специально не писал много цифр, чтобы сфокусироваться на словесной части.
НЛО прилетело и опубликовало эту надпись здесь
коммит подразумевает, насколько я знаю, не только изменения в журнале, но и в самой БД. А как с ними?
НЛО прилетело и опубликовало эту надпись здесь
Это методы снижания нагрузки на диски. Меня же интересует, скорее, вопрос рассчёта нагрузки. Потому что я сейчас (уже третий день с этой темой вожусь), понимаю, что на самом деле никто реально не может эту нагрузку рассчитать, и все уповают на то, что «авось, хватит».
НЛО прилетело и опубликовало эту надпись здесь
Ну, давайте поиграем в ТЗ.

ОС: Linux/Windows (пишу оба варианта, выбирайте какой приятнее)
Соединение с сервером: SAS
Диски: Около 50 SATA дисков в корзинах.
Набор стандартных операций пользователя: офисная работа, размер открываемых файлов неопределён (какой пришлют прайс, такой и будет).
SQL-база, допустим (на ваш выбор): MSSQL+1C, MYSQL+SUGARCRM.
Количество пользователей — от 30 до 50
Функции построения отчётов: отчёт о продажах с такого-то по такое-то, отчёт о закупках, обороты, кассовые отчёты за произвольные интервалы времени.
Характер базы, допустим, 'mixed', хотя я осмысленно на этот вопрос ответить не могу.
НЛО прилетело и опубликовало эту надпись здесь
Вот это «допустим» и смущает. Я начинал возиться с тестами с мыслью «ну там всё просто, количество винтов, складываем иопсы, получаем производительность рейда». Оказалось, нет.

=
НЛО прилетело и опубликовало эту надпись здесь
RAID0 красивый вариант.

Жить роскошно, правда недолго.
НЛО прилетело и опубликовало эту надпись здесь
возможно размер слайса должен быть кратен размеру IO буфера для улучшения производительности?
Размеры слайсов: 16к, 32к, 64к, 128к, 256к, 512к

тестовые блоки: 4к, 64к, 4М.

С кратностями всё хорошо.
А какой смысл в использовании RAID60 на 22дисках? Для ряда задач, это будет совершенно необоснованное избыточное хранение данных…

Нужно иметь более-менее избыточность при соответствующем объёме. 4 диска избыточности, 18 информации. Вполне нормально, ИМХО.
Если скорость хоть одного винчестера ниже стандартной — скорость всего рейда будет ниже.
В нормальных аппаратных рейдах, например 3ware, можно в реалтайме видеть IOPS для каждого из дисков, входящих в массив.
Все винчестеры одинаковые.
Дело не в «одинаковости», скорость может снижаться по разным причинам, например наличие бэдов, разные прошивки.
Винты из одной партии (серийники подряд), новые, смарты идеальные. Рейд адаптек — 5445Z
Если у вас слайс 16к и вы хотите записать 4М — это затронет 256 стрипов.
в вашем случае — почти все винты.
почти все винты будут позиционировать головы туда-сюда туда-сюда…

ужас…

варианты решения
1.контролер с хооооорошеньшим буфером, и мозгами.
чтобы нормально оптимизировал очереди, и винды, даже при рандом аксесе, действовали внятно
2.увеличивать размеры стрипов
3.как вариант — поднять несколько различных рейдов\групп и ид, чтобы одни таблицы читались с одного набора винтов, а другие — с других.
4.сказать что вам важнее — скорость чтения одного файла или IOPS — ведь можно построить систему которая будет быстро обслуживать одного клиента, а можно постоить так чтобы обслуживало конечно сильно медленее, но десяток тысяч( первая система в этом вариант встанет раком )

хотя это все софистика, 90% решает контролер, остальные 10% — разложения данных по «полочкам»
Рейд 5 и 6 по определению медленные на запись.
Сравнение с 10кой в ближайших планах. Но, насколько я понимаю, при большом количестве винтов, скорость записи довольно прилично возрастает. Во-всяком случае, в линейных тестах у меня запись сравнялась с 10ой при примерно 10-12 дисках в массиве.
НЛО прилетело и опубликовало эту надпись здесь
точно, ведь он собирает железо :)
(чур-чур-чур) Железо собирает поставщик. А вот настраивает уже админ, да.
Любопытно, но пока у меня такая статистика:

блоки: рандом от 4к до 4Мб

Слайсы по 16к — 113875кб/с запись, слайсы по 512к — 77031кб/с. Это тест по 256Гб данных. Насколько я понимаю, ключевым тут является то, что при записи 4к в 512 слайс, его приходится пересчитывать весь (читать и писать обратно).

Сейчас доходит тест с 64к слайсами…
Потестируйте софтовый md-raid в линуксе, думаю вас сильно удивят результаты.
В очереди есть.

Пока из интересного: 4 RAID6 на рейде и стрип из них с помощью md на линуксе дал максимальную скорость чтения в 850Мб/с, в то же самое время, RAID60 того же размера с 4мя secondary raids дал только 650.
НЛО прилетело и опубликовало эту надпись здесь
я вообще не понял, зачем ты писал пост.
очевидно же, что значения «максимальный иопс» не существует.
скорее интересен вариант макимум иопсов с диска при латентности до XX милисек.
вот это уже можно померять, но лучше воспользоваться табличкой от поставщиков сан-решений, который посчитали это уже очень давно: «SAS 15k — 180, SAS 10k — 140, SATA 7200 — 80, SATA 5400 — 40»
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации