Что было бы эффективнее?
Допустим, у нас есть 2 жестких диска.
Рассмотрим этот сценарий:
Есть 2 запроса на моделирование.
В настройке RAID-0 скорость ответа будет увеличена за счет массива.
В штатной настройке 2 hdd. Скорость ответа может быть значительно увеличена, если запрошенные файлы не находятся на том же жестком диске. Таким образом, оба жестких диска будут работать с максимальной загрузкой файлов.
Мой вопрос: что будет быстрее и эффективнее в долгосрочной перспективе?
Знайте свой ввод / вывод. Это зависит от ваших ожидаемых шаблонов ввода-вывода, а также от вашей отказоустойчивости. Что будет быстрее и эффективнее в долгосрочной перспективе? Это полностью зависит. Нет твердого стандарта.
Если у вас есть две очень разные рабочие нагрузки на этом сервере, то размещение каждой рабочей нагрузки на отдельном шпинделе даст вам лучший выигрыш ... возможно. Может случиться так, что общий объем ввода-вывода обоих вместе не превысит того, что можно получить с помощью RAID0. Или, может быть, это произойдет, особенно если один из них включает значительное количество последовательных обращений, когда любой случайный ввод-вывод замедлит работу.
Обратной стороной RAID0 является то, что отказ одного диска означает все данные ушли не только половина (технически да, половина все еще там, но это не полезный). Вы должны сбалансировать этот потенциал с вашими целями производительности.
Учитывая, что с RAID 0 одна заправка диска уничтожит все ваши данные ... Наиболее эффективным решением в этом сценарии является JBOD.
RAID 0 - это почти никогда правильный ответ.
Мой вопрос: что будет быстрее и эффективнее в долгосрочной перспективе?
Предполагая, что вам действительно нужны эти подходы (без избыточности), вы обнаружите, что если вы в первую очередь не выполняете произвольный доступ к объемам данных, значительно меньшим, чем размер полосы, подход RAID0 будет работать значительно лучше, чем JBOD.
Рассмотрим следующие случаи:
Два файла больше, чем размер полосы: вероятность, что они находятся на одном диске JBOD: 50%. Вероятность того, что они находятся на «одном» RAID-диске для потоковой передачи: 0%
Один файл больше, чем размер полосы: вероятность, что он находится на том же диске JBOD: 100%. Вероятность того, что он находится на «том же» RAID-диске для потоковой передачи: 0%
Три файла больше, чем размер полосы: вероятность того, что они равномерно распределены между дисками с JBOD: 0%. Вероятность их равномерного распределения между дисками RAID: 100%.
Большое количество файлов больше, чем размер полосы: Функционально эквивалентны между параметрами.
Большое количество маленьких файлов / случайных маленьких запросов: Функционально эквивалентно между вариантами с оговоркой, что если поиск выполняется к одному файлу, RAID0 снова побеждает.
Ситуация, в которой JBOD выигрывает, - это если вы хотите восстановить некоторые данные, если диск вышел из строя. Если вы используете любой из этих методов и хотите иметь возможность восстанавливать данные в случае сбоя диска, вы, вероятно, делаете это неправильно (IMHO).
Это должно зависеть от размера или непрерывности рассматриваемого чтения? RAID0 увеличивает скорость непрерывного чтения, но при произвольном доступе обычно даже незначительно.