Лучшая производительность: 1 ТБ по сравнению с более крупными дисками в приложении с помощью только последовательное чтение-записи

Я думал бы, что это - некоторая конфигурация сервера. Что происходит, если Вы делаете два туннеля, и открытый (говорят), что 8 канавок соединений оба, замораживается (->, полный предел сервера) или не (-> ограничивают для каждого подключения)?

6
задан 1 December 2011 в 22:23
4 ответа

Самое главное, что для лучшей производительности вам нужно 24 диска (или больше, несите меня), потому что у вас 24 потока. Если дисков меньше, чем потоков, у вас нет последовательной работы. Учитывая два потока на одном диске, у него будет несколько поисков; Каждый поиск составляет, скажем, 10 мс, поэтому потеря возможности передачи составляет около 1 МБ. Всего с 10 поисками в секунду у вас будет 90 МБ / с (2 x 45) вместо 1 x 100 МБ / с.

Я думаю, вам было бы лучше с 48 дисками по 1 ТБ каждый. Диски будут спарены, чтобы получить 24 очищенные (также известные как RAID0) группы. Вы можете предположить, что удаление, выполненное на уровне ОС, окажет незаметное влияние, так что фактически каждый поток получает двойную пропускную способность диска 1 ТБ.

Я не вижу возможной выгоды от дисков 3 ТБ с точки зрения производительности.

Тем не менее, самым большим преимуществом в производительности будет нечто совершенно иное. Просто убедитесь, что приложение передает данные эффективно - что оно серьезно заполняет очередь на жестком диске этими командами ввода-вывода. Если он написан таким образом, что он неуклюже ожидает завершения некоторого ввода-вывода перед постановкой в ​​очередь другого ввода-вывода, тогда это снизит пропускную способность.

  • Лучше всего исправить это в самом приложении или ...
  • Чтобы частично смягчить это, вам нужно будет вложить много денег в дисковый массив с огромным дополнительным кешем.

PS. Обожаю замечание о 2016 году, привет, ребята! Вы уже получили те доски для наведения?

Если он написан таким образом, что он неуклюже ожидает завершения некоторого ввода-вывода перед постановкой в ​​очередь другого ввода-вывода, тогда это снизит пропускную способность.

  • Лучше всего исправить это в самом приложении или ...
  • Чтобы частично смягчить это, вам нужно будет вложить много денег в дисковый массив с огромным дополнительным кешем.

PS. Обожаю замечание о 2016 году, привет, ребята! Вы уже получили те доски для наведения?

Если он написан таким образом, что он неуклюже ожидает завершения некоторого ввода-вывода перед постановкой в ​​очередь другого ввода-вывода, тогда это снизит пропускную способность.

  • Лучше всего исправить это в самом приложении или ...
  • Чтобы частично смягчить это, вам нужно будет вложить много денег в дисковый массив с огромным дополнительным кешем.

PS. Обожаю замечание о 2016 году, привет, ребята! Вы уже получили те доски для наведения?

3
ответ дан 3 December 2019 в 00:36

Учитывая, что операции являются последовательными и минимальными конфликтами, может не быть большой разницы в производительности записи между SATA и SAS.

Показатели чтения - совсем другая история. Я не думаю, что вы найдете много дисков econo SATA 15k. Диски SAS, как правило, более высокого класса и имеют высокую скорость вращения, а контроллеры массивов SAS обычно превосходят SATA, но если вы используете econo non-RAID hba, может быть не так много разницы.

Как бы то ни было, вы должны быть в состоянии достичь производительности записи не менее 100 Мбайт / с при использовании одного диска SATA емкостью 2 ТБ на стандартном контроллере без массива. Можно было бы и больше с SATA 6 Гбит / с. Для сравнения у меня есть RAID0 с 4-мя дисками SATA по 2 ТБ (6 Гбит / с) и производительность последовательной записи 500 Мбайт / с.

1
ответ дан 3 December 2019 в 00:36

Что ж, ваш ответ должен основываться не на емкости накопителя, а на количестве пластин и их плотности. Диск 7200 об / мин, последовательно считывающий 100 ГБ с диска 1,5 ТБ, состоящего из 3 пластин по 500 ГБ, будет медленнее, чем чтение тех же 100 ГБ с диска 1,5 ТБ, состоящего из двух пластин по 750 ГБ, поскольку плотность данных на последнем выше.

На самом деле вам нужно найти тесты для всех рассматриваемых дисков.

Я рискну предположить, что в ситуации с ~ 18 жесткими дисками по 3 ТБ, на которых хранится 50 ТБ, по сравнению с 50 жесткими дисками по 1 ТБ, 3 ТБ диски будут быстрее при чтении или записи одного файла за раз ... но опять же, все зависит от производительности отдельных дисков.

0
ответ дан 3 December 2019 в 00:36

Я думаю, что хотя бы попытка RAID здесь имеет смысл. Существуют некоторые накладные расходы, и перестройка RAID, когда она происходит, может в конечном итоге стать препятствием, но есть некоторые возможные преимущества.

  • Очевидно, что гораздо более простое управление
  • Пиковая производительность одного диска будет примерно такой: 50-70 МБ / с на всем диске. Это будет быстрее на внешнем крае (например, в начале диска) и медленнее на внутреннем крае (в моих тестах обычно вдвое меньше скорости внешнего края). Если вы пишете на один диск, вы попадете в это ограничение все время. Если вы записываете на совокупность дисков (как бы это ни управлялось), вы все равно достигнете этого предела (устойчивая производительность 4-дискового RAID0 просто в 4 раза выше производительности внутреннего края одного диска), но вы имеют более высокую совокупную пропускную способность.
  • Наборы RAID увеличивают конкуренцию (если вы выполняете несколько операций записи / чтения). Они также увеличат доступную пропускную способность. Это может иметь значение, а может и не иметь для вас значения, но попробовать стоит
  • Похоже, ваши записи в основном представляют собой потоковую передачу большого объема данных на диск. Если это так, накладные расходы RAID5 довольно низкие, потому что, если вы записываете на диск полные фрагменты данных шириной полосы RAID, нет необходимости выполнять цикл пересчета / записи чтения / четности - ваш контроллер просто будет записывать вывод новой полосы и четности одним ударом. (Четность - это дешево, мешает цикл чтения / записи)

Запись 800 ГБ данных из каждого потока займет примерно 2-3 часа. Предполагая, что ваш диск будет поддерживать около 120 МБ / с на внешнем крае и около 60 МБ / с на внутреннем крае. При 120 МБ / с ваши 800 ГБ данных займут около 111 минут, при 60 МБ / с - вдвое больше. Падение производительности записи не является линейным, но справедливо предположить, что вы потратите от 2 до 3 часов на запись этого файла размером 800 ГБ. Предложение @kubanczyk, вероятно, сократит это время вдвое, но не бойтесь переходить к более крупным агрегациям (будь то RAID0, или RAID5, или RAID5 + 0)

Я не очень хорошо это чувствую (не дошел для проведения тестов самостоятельно), но обычно считается, что диски SAS работают лучше, даже если скорость вращения одинакова (например, Seagate Constellation ES.2 SATA против Seagate Constellation ES.2 SAS). Некоторые из преимуществ включают полнодуплексный режим для дисков SAS и большую глубину очереди. Сравнение полнодуплексной и полудуплексной точек должно означать, что одновременные операции чтения / записи имеют меньший общий эффект. Вы по-прежнему будете сталкиваться с запросами на диск, но, например, вы не будете останавливать запись на диск во время ожидания чтения.

Я создаю много систем с 16-дисковыми массивами. Два набора RAID5 (аппаратные RAID-контроллеры) с программным RAID-массивом Linux поверх. Здесь мы получаем довольно хорошую производительность: где-то между 750 и 850 МБ / с во всем массиве, в зависимости от используемой модели диска. Добавление нескольких писателей действительно добавляет конкуренции и снижает общую пропускную способность, но в зависимости от того, как часто вы записываете свои данные, а не считываете их обратно, что-то в этом роде может помочь.

Надеюсь, я не запутал здесь слишком много воды :)

например, задерживать запись на диск во время ожидания чтения.

Я строю много систем с 16-дисковыми массивами. Два набора RAID5 (аппаратные RAID-контроллеры) с программным RAID-массивом Linux поверх. Здесь мы получаем довольно хорошую производительность: где-то между 750 и 850 МБ / с во всем массиве, в зависимости от используемой модели диска. Добавление нескольких писателей действительно добавляет конкуренции и снижает общую пропускную способность, но в зависимости от того, как часто вы записываете свои данные, а не считываете их обратно, что-то в этом роде может помочь.

Надеюсь, я не запутал здесь слишком много воды :)

например, задерживать запись на диск во время ожидания чтения.

Я строю много систем с 16-дисковыми массивами. Два набора RAID5 (аппаратные RAID-контроллеры) с программным RAID-массивом Linux поверх. Здесь мы получаем довольно хорошую производительность: где-то между 750 и 850 МБ / с во всем массиве, в зависимости от используемой модели диска. Добавление нескольких писателей действительно добавляет конкуренции и снижает общую пропускную способность, но в зависимости от того, как часто вы записываете свои данные, а не считываете их обратно, что-то в этом роде может помочь.

Надеюсь, я не запутал здесь слишком много воды :)

где-то между 750 и 850 МБ / с поддерживается по всему массиву, в зависимости от используемой модели диска. Добавление нескольких писателей действительно добавляет конкуренции и снижает общую пропускную способность, но в зависимости от того, как часто вы записываете свои данные, а не считываете их обратно, что-то в этом роде может помочь.

Надеюсь, я не запутал здесь слишком много воды :)

где-то между 750 и 850 МБ / с поддерживается по всему массиву, в зависимости от используемой модели диска. Добавление нескольких писателей действительно добавляет конкуренции и снижает общую пропускную способность, но в зависимости от того, как часто вы записываете свои данные, а не считываете их обратно, что-то в этом роде может помочь.

Надеюсь, я не запутал здесь слишком много воды :)

0
ответ дан 3 December 2019 в 00:36

Теги

Похожие вопросы