Нужен ли raid для ssd 1c
Вопрос производительности 1С в файловом режиме стоит довольно остро, особенно перед небольшими фирмами, которые не могут позволить себе существенных вложений в оборудование. Тем не менее "аппетиты" приложения от релиза к релизу только растут и задача повышения быстродействия при умеренных затратах бюджета становится все актуальнее. В этом случае неплохим решением будет приобретение и размещение баз на SSD.
Один из наших клиентов, небольшая фирма по бухгалтерскому обслуживанию, начал жаловаться на медленную работу 1С:Предприятие. Собственно и так не очень быстрая работа приложения стала совсем тоскливой после перехода с Бухгалтерии 2.0 на Бухгалтерию 3.0.
В наличие имелся простой терминальный сервер на Core i3 2120, 8 Гб RAM, с дисковым массивом RAID 1 из двух Western Digital RE4, который обслуживал от трех до шести пользователей, каждый из которых работал с двумя - тремя базами одновременно.
Анализ производительности сразу выявил узкое место - дисковая подсистема (скриншот сделан уже после установки SSD, поэтому к RAID массиву относятся логические диски C: и E:).
Несложные расчеты показали, что запуск даже одной информационной базы практически полностью использует производительность массива, около 150 IOPS при текущем соотношении чтение/запись - фактический предел для зеркала из двух не самых быстрых дисков. На что косвенно указывает и размер очереди.
Одновременный запуск нескольких баз в начале рабочего дня приводил к существенному замедлению работы сервера и снижал отзывчивость системы. Также наблюдадлась неприятная задумчивость при работе с журналами, при формировании отчетов и т.п.
Тест производительности массива также показал невысокий результат, по сегодняшним меркам более подходящий портативным дискам.
Стало ясно - требуется модернизация дисковой подсистемы. Даже по предварительным прикидкам, создание производительного массива на основе массовых HDD упиралось как в доступный бюджет, так и в физические возможности железа, которое просто не имело необходимого количества SATA-портов и дисковых корзин в корпусе. Поэтому было принято решение о приобретении SSD.
Так как высоких дисковых нагрузок не предусматривалось, то выбор производился в первую очередь из соображений цены. Скоростные характеристики также отходили на второй план, так как узким местом становился интерфейс SATA-II. В итоге был приобретен 128Gb Corsair Neutron [CSSD-N128GB3-BK] LAMD, который будучи установленным в сервер показал следующие скоростные характеристики:
Как видим, операции последовательного доступа ожидаемо уперлись в пропускную способность интерфейса, но в нашем случае это имеет второстепенное значение. Основное внимание следует обратить на операции случайного доступа, которые на порядок превосходят аналогичные показатели традиционных HDD.
Следующий вопрос, который нужно решить: это создать ли "зеркало" из SSD и пожертвовать TRIM ради отказоустойчивости или оставить одиночный диск, выбрав скорость вместо отказоустойчивости. Следует отметить, что современные SSD кроме команды TRIM используют собственные технологии борьбы с деградацией, такие как сбор мусора, что позволяет довольно эффективно работать даже на системах без TRIM. Используемый в данной серии SSD контроллер LAMD (Link_A_Media Devices) как раз таки отличается весьма эффективными технологиями сбора мусора, на уровне накопителей корпоративного уровня, что в общем неудивительно, так как его разработчики давно работают в enterprise-сегменте.
Так как объем ежедневно вводимых документов невелик, то мы ограничились единственным SSD при обязательных ежедневных бекапах. Косвенно эффект от применения твердотельного диска можно оценить по монитору производительности:
Количество операций ввода-вывода существенно выросло, как и скорость обмена с диском, при этом длина очереди не превышает единицы. Это очень неплохие показатели, осталось проверить насколько наши действия ускорили работу непосредственно с 1С:Предприятие.
Для этого мы провели небольшое экспресс-тестирование в ходе которого измеряли время загрузки информационной базы и время группового перепроведения комплекта документов за определенный период времени. В ходе тестирования применялась конфигурация 1С:Бухгалтерия 3.0.27.7 на платформе 8.3.3.721.
Также в ходе анализа производительности мы обратили внимание на тот факт, что в своей работе 1С:Предприятие активно использует временные папки, которые в нашем случае были расположены на жестком диске. Поэтому в целях достижения максимальной производительности их стоит также перенести на SSD, однако для любителей экономить ресурс твердотельных дисков мы включили в тест оба варианта: когда базы расположенны на SSD, а временная папка на HDD и когда для работы приложения полностью используется SSD.
Как видим, перенос информационных баз на SSD сразу уменьшил время их загрузки более чем вдвое, а перепроведение ускорилось приблизительно на 30%. При этом полностью сняласть проблема с падением производительности при совместной работе.
Перенос на SSD временных папок позволяет сократить время загрузки более чем втрое и приблизительно в два раза ускорить проведение документов. Здесь есть над чем подумать даже убежденным приверженцам экономии ресурсов диска. Наше мнение по данному вопросу следующее, если вы купили SSD - то следует использовать его по полной программе.
Сделаем небольшое отступление. Используемый нами диск Corsair Neutron [CSSD-N128GB3-BK] имеет ресурс 2-3K циклов стирания/записи. Несложные расчеты показывают, что если ежедневно полностью перезаписывать всю емкость диска, то для исчерпания ресурса потребуется 5-8 лет. Кроме того статистика показвает, что основная причина выхода из строя SSD в течении гарантийного срока не связана с исчерпанием ресурса, а представляет собой производственный брак или ошибки в прошивке.
В заключение хочется сказать, что применение SSD на сегодняшний день пожалуй единственный эффективный способ существенно повысить производительность 1С:Предприятие в файловом режиме. И, что особенно важно, доступный по цене даже для небольших предприятий.
Затем появились SSD, или твердотельные накопители ( сокращённо они до сих пор называются “диски”, хотя там уже круглого ничего не осталось 🙂 ), скорость которых поначалу той же была хоть и выше, чем у механики, но всё равно “не радующей”, а надёжность вызывала сомнения (до сих пор большое количество айтишников уверены, что “SSD ненадёжные”), и эти SSD тоже по привычке запихивались в RAID-массивы. Однако “внезапно” стало проявляться, что далеко не всегда скорость итогового массива из SSD так же хорошо масштабируется, как если бы это был массив механических дисков, и тому есть ряд причин. Наиболее важные для нас минусы:
На снимке ниже: пример такого массива, собранного “неправильно”, формата RAID50, в котором 10 (десять) SSD. Причём в этом массиве “хорошо” себя показывает только чтение, и только крупными порциями (верхняя строчка Seq в колонке Read каждого из двух результатов). Запись даже крупными порциями (верхняя строчка Seq в колонке Write) показывает нам всего 142 мегабайта в секунду, а многопоточная запись пакетами по 4 килобайта (нижняя строчка 4K QD32 в колонке Write) даёт нам всего около 16 мегабайт в секунду.
По нашим наблюдениям, в массе случаев и владелец бизнеса, и айти-руководитель подходят к выбору личного автомобиля гораздо вдумчивей, тщательней и придирчивей, чем к вопросу подбора сравнимого по стоимости серверного оборудования “на работу”.
Временные данные 1С или СУБД, а также вторичные данные, потеря которых не остановит работу компании.
Вышедшие NVMe PCIe 4.0 диски типа intel D7-P5600 настолько быстры, что современные сервера на RAM-дисках не дадут сколько-то значимого преимущества, но при этом обладают недостатками надежности при отключении питания. Для малого бизнеса есть бюджетные диски типа Samsung 980 Pro.
Основные данные и файлы лицензирования ключей 1С.
Надежность дисков серии intel p3700, p4800 проверена временем. На таких дисках можно смело размещать основные данные. Вероятность выхода из строя таких дисков меньше чем блока питания к примеру. На некоторых проектах такие диски успешно работают более 5 лет.
В итоге: для сервера 1С/СУБД RAID-массив из NVMe SSD в большинстве случаев не является необходимым ни для ускорения, ни для повышения надёжности.
Несмотря на то, что программный комплекс 1С существует довольно давно, все равно вокруг него постоянно кипят баталии на форумах. Многие считают, что достаточно несколько HDD и сформированный аппаратный или программный RAID для обеспечения полноценной работоспособности программного комплекса, другие предпочитают использовать более скоростные накопители. Сегодня поговорим о SSD для сервера 1С, а чтобы было проще ориентировать, сформируем небольшой список требований, на которые будем ориентироваться:
программное обеспечение используется всеми сотрудниками, иногда единовременно;
взаимодействует с сайтом и другим программным обеспечением, например, выгружает прайс-лист и цены;
не будем вдаваться в технические подробности, смотрим именно на SSD для сервера 1С;
в качестве базы данных используется Postgre или MSSQL;
при большой нагрузке используется два сервера.
Если пользователей от 5 до 10
Стандартный набор для небольшого бизнеса, несколько человек работают с 1С постоянно, другие эпизодически, потому сценарий здесь крайне простой и не требует излишних затрат. Впрочем, можно выделить несколько возможностей:
Используем жесткие диски с интерфейсом SAS. Дорого и бесполезно. Несмотря на то, что он быстрее SATA, но при этом вдвое дороже. Построение зеркального RAID скушает немало денег без существенной пользы.
Использование HDD SATA. Зеркальный RAID будет крайне медленным, RAID 10 потребует 4 жестких диска. Тоже дороговато, а «бутылочное горлышко» в виде дисковой подсистемы иногда может давать о себе знать. И да, RAID 0 имеет малую отказоустойчивость, потому, если накопитель выйдет из строя, ваши данные будут повреждены, возможно, безвозвратно.
Интерфейс все тот же SATA, но используем твердотельные накопители. Они заметно шустрее и подходят для построения зеркального RAID, что позволит максимально эффективно работать и обезопасить данные. Использовать лучше память TLC или 3D NAND QLC, цена будет приемлемой.
Интерфейс NVMe. Очень быстро, но невероятно дорого, в данном случае будет неоправданной тратой средств.
Теперь расскажу о типах памяти, применяемых в SSD. MLC имеет в распоряжении около 3000 циклов перезаписи отдельной ячейки, потом она с высокой вероятностью выйдет из строя, скорость чтения/записи также довольно высока, около 600 МБ/с для чтения и 200 МБ/с для записи. TLC по скоростным параметрам практически не отличается , но надежность заметно ниже, отдельной ячейки хватает примерно на 1000 циклов перезаписи. 3 D NAND получился заметно надежнее и выше по скорости, при этом, позволил в тот же форм-фактор накопителя запихивать больше памяти . У 3D NAND TLC от 3 до 10 тыс. циклов перезаписи , у MLC 3D NAND примерно 10-15 000. Более подробную информацию можете узнать здесь.
Чтобы быстро убить такой твердотельный накопитель, придется несколько раз в день полностью его заполнять и стирать. В противном случае его спокойно хватит на несколько лет, а то и больше. Современные SSD очень надежны.
Но не стоит забывать про интерфейс NVMe. Архитектурно флеш-память с данным интерфейсом не имеет отличий, но суть в том, что быстродействие SSD ограничивают именно такие шины, как SAS и SATA. NVMe, в отличии от предыдущих типов, подключается напрямую в разъем PCI-E, что приводит к снижениям задержек при ответе на запросы к накопителю, а также конструктивно PCI-E имеет больше полос для пропуска данных, что приводит к значительному росту скорости. В качестве SSD для сервера 1С на 5-10 пользователей в использовании NVMe мало смысла, ведь столь серьезных потребностей в скорости нет, а вот цена будет кусаться, причем серьезно.
Наиболее выгодным вложением будет приобретение простых твердотельных накопителей с интерфейсом SATA, имеющим ресурс от 150 TBW и более или 0,5 DWPD. Обратите внимание следующие модели: Crucial MX500, Micron 5200 Pro. Они вполне подойдут для закрытия потребностей. Можно брать более старые модели, они, конечно, чуть похуже, но незначительно, а дешевле могут быть раза в полтора.
Если пользователей от 10 до 30
В данном случае HDD точно превратится в бутылочное горлышко, потому использовать жесткие диски не рекомендуется. А вот SSD с интерфейсом SATA или SAS закроют ваши потребности в полной мере. Наибольшую эффективность покажут NVMe-накопители, но такие SSD для сервера 1С с приличным объемом могут оказаться неоправданно дорогими.
Ваша задача следующая:
- прикинуть потенциальный объем будущей базы данных;
- рассчитать объем приложения и операционной системы;
- выделить достаточное количество дисков с учетом планируемого RAID.
Обычно в организациях с таким количеством пользователей объем активной базы данных составляет не менее 200 гигабайт, но редко превышает 1 терабайт. RAID 1, обеспечивающий сохранность данных требует 2 накопителя, потому смотрим на следующие модели:
- Seagate IronWolf 110 с объемом 960 Гб. Примерная стоимость около 17 500 рублей.
- Crucial BX500 с аналогичным объемом, стоимость около 7 тыс.
- Intel S4500 Series. Объем тот же, но надежность на порядок выше, чем у предыдущих моделей. Цена от 15 штук.
- Samsung 970 EVO Series. Он самый шустрый, но интерфейс M.2. Соответственно, нужно достаточно количество разъемов PCI-E x4. Стоимость около 12 000.
Конечно, это навскидку, можете выбрать другой объем, а также другие модели, но следите, чтобы TBW не было ниже 150, лучше выше.
SSD для сервера 1С на 30-50 пользователей
Старый добрый SATA еще будет работать, но повысить появится задача повысить не только надежность, но и скорость, потому рассчитывайте так, чтобы можно было построить RAID 10, для которого требуется 4 накопителя. Вас ожидает большое количество смешанных обращений к дисковой подсистеме, много пользователей способны серьезно нагрузить оборудования и даже на SSD создать «бутылочно горлышко». Потому, либо используйте SATA на RAID 10, либо есть вариант остановить выбор на нескольких отдельных серверах и отдельной системе хранения данных для базы данных. Но этот вариант очень дорог.
Если скорость очень важна, стройте дисковую подсистему на интерфейсе NVMe, обратите внимание на SSD Intel серии 760p. Конечно, есть модели получше, но цена получится значительно выше.
50-100 пользователей
Ситуация становится на порядок тяжелее. Придется делать распределенную базу данных, которая будет разделена на активную часть (к которой идут постоянные обращения) и на архивную (лежит в запасе, ибо может пригодиться). Накопители должны быть производительны и надежны. Предпочтение лучше отдать NVMe-накопителям, либо использовать SATA, но на нескольких серверах, которые впоследствии будет объединять данные в единный пул.
100 пользователей и более
Система практически та же, но потребуются производительные SSD для сервера 1С на каждом сервере. Подойдет Intel Optane, накопитель дорогой, но очень надежный. Также может использовать твердотельный накопитель Intel SSD DC P4500 Series, он имеет ресурс 1, 34 PBW, цена, конечно, высокая, но, думаю, для компании с таким количеством пользователей 1С она будет приемлемой. Самый лучшие вариант, использование кластера, в котором как минимум два устройства. Лучше больше, ибо требуется как сервер приложений, так и сервер баз данных. На каждом свои массивы, программными методами объединенные в пул.
Заключение
Как видите, с выбором SSD для сервера 1С могут возникнуть трудности. Но все довольно легко, больше пользователей — выше надежность отдельного накопителя. Для получения скорости придется строить сложные RAID, иногда использовать кластеры серверов. Если задача столь сложна, лучше нанять компетентного специалиста или обратиться к профессионалам, ссылку на которых оставил выше.
Здравствуйте, планирую на сервер приобретать ssd с MLC вместо обычных hdd. Подскажите имеет ли смысл объединять ssd в raid 1 (mirror)? А то слышал мнения что ssd выходят из строя одновременно. И вопрос на счет TRIM? Поддерживает ли его mdadm в Gentoo?
Смысла в ssd нет!
Только в ноутбуках оправдано
Обычные харды из одной партии тоже сыпятся хором.
viewizard ★★ ( 12.01.16 14:44:46 )И вопрос на счет TRIM? Поддерживает ли его mdadm в Gentoo?
Последнее исправление: viewizard 12.01.16 14:45:13 (всего исправлений: 1)
Если зеркалировать, то с большой вероятностью они у тебя сдохнут одновременно. Дохнут они после определённого количества циклов перезаписи (изучи, как они работают, если не знаешь); в зеркале на них одновременно данные пишутся и в одинаковом объёме, поэтому и выйдут из строя они примерно одновременно.
Смысла в ssd нет! Только в ноутбуках оправдано
Ох, беда-беда, побежал БД на HDD переносить, скажу ребятам, что диванные кукаретики ЛОРа запретили SSD не в ноутбуках использовать.
Свою диванную БД можешь хоть на флешках держать, хоть в RAM, это не сервер, а уровень локалкхоста
Свою диванную БД можешь хоть на флешках держать, хоть в RAM, это не сервер, а уровень локалкхоста
Ты меня со Спуфингом попутал.
Ну на счет hdd скажу следующее. Очень часто спасал raid когда спустя пару лет из одновременно купленных hdd умирал один. На ssd тоесть смысла нету? проще каким нибидуь rsynком бекапить?
HDD по-другому умирают. Обычно это так или иначе связано с производственным браком.
SSD гарантированно умрёт после определённого количества циклов перезаписи, он так работает. Поэтому именно зеркалировать именно для сохранности данных SSD не нужно, это бессмысленно.
Читайте также: