Производительность 1С на MS SQL и PostgreSQL - сравнительный анализ 2018
Быстрое внедрение ERP Комплексные услуги
от 1С:Центр ERP!
Управление доставкой Для торговых и курьерских компаний!
1C:ЭДО Узнайте о всех преимуществах электронного документооборота!
Переход на «1С:ЗУП ред. 3» Фирма «1С» прекращает поддержку «1С:ЗУП 2.5»!
Аренда сервера 1С
в облаке
Работайте в 1С удаленно с экономией до 70%!

Продукты по бухгалтерскому и управленческому учету компании 1С наиболее распространены на территории РФ. Тысячи компаний ведут свой бизнес, опираясь на типовые и специализированные конфигурации 1С. При таком массовом использовании, регулярно возникает ряд вопросов по оптимизации бюджета на ПО и разумному использованию ресурсов. Не утихают споры вокруг серверных частей данного комплекса, в частности – на какой операционной системе базировать сервер 1С и какой СУБД доверить обработку баз 1С. В ходе наших тестов мы постараемся ответить на эти вопросы.

Участники тестирования

Операционная система MS Server и СУБД MS SQL

  • Фирма 1С открыто позиционирует эту связку как основную рабочую модель, соответственно продукты 1С создаются в первую очередь для нее
  • Наличие протокола прямого скоростного обмена информацией SharedMemory
  • Есть официальная техническая поддержка и сервисные контракты
  • Есть база знаний и тонны информации по инсталляции и тонкой настройке 1C+MS SQL

Операционная система Unix и СУБД PostgreSQL

  • Система полностью бесплатна (кроме лицензии на сервер 1С:Предприятие)
  • Имеется возможность гибкой настройки множества параметров, улучшающих работоспособность СУБД
  • Заявлена поддержка СУБД PostgreSQL продуктами 1С
  • Есть возможность репликации баз

Конечно же, стоимость проекта, отказоустойчивость и техническая поддержка являются важными критериями при выборе информационной системы для 1С. Однако, есть фактор, в большинстве случаев кардинально влияющий на принятие решения – это быстродействие.

Поскольку технической литературы по этим двум системам на просторах Интернета просто великое множество, можно было бы долго спорить о длинных сравнительных таблицах, которые, в зависимости от целей, подчеркивают выгоды того или иного продукта. Дискутировать можно о том или ином параметре среди сотен других таких же - насколько он уникален в своем роде и как он влияет на достижение результата. Но теория без практики мертва – предлагаем в этой статье опустить теорию и перейти непосредственно к фактам, чтобы именно на практике проверить быстродействие обеих информационных систем с определенным уровнем рекомендуемых настроек и в различных вариантах серверной архитектуры (см. таблицу 2).

Методы тестирования

В наших испытаниях мы будем опираться на два метода синтетической генерации нагрузки и имитации работы пользователей в 1С. Это тест Гилева (TPC-1C) и специальный тест 1С «Тест центр» из инструментария 1С:КИП со специальными сценариями работы пользователей.

Тест Гилева (TPC-1C)

Тест Гилева принадлежит к разделу универсальных кроссплатформенных нагрузочных тестов. Он может использоваться как для файловой, так и для клиент-серверной архитектуры 1С:Предприятие. Тест измеряет количество работы в единицу времени в одном потоке и подходит для оценки скорости работы однопоточных нагрузок, включая скорость прорисовки интерфейса, влияния ресурсных затрат, перепроведения документов, процедур закрытия месяца, расчета зарплаты и т.п. Универсальность позволяет делать суммарную оценку производительности, не привязываясь к одной конфигурации платформы. Результатом теста является тотальная оценка измеряемой системы 1С, выраженная в условных единицах.

Специализированный тест из инструментария «Тест центр» 1С: КИП

Тест-центр – инструмент проведения многопользовательских нагрузочных испытаний систем на базе 1С:Предприятие 8 (см. рисунок 1). С его помощью можно моделировать работу компании без участия реальных пользователей, что позволяет оценивать применимость, производительность и масштабируемость информационной системы в реальных условиях. Система представляет собой конфигурацию, предоставляющую механизм управления процессом тестирования. Для тестирования информационной базы необходимо интегрировать конфигурацию Тест-центра в конфигурацию тестируемой базы при помощи сравнения и объединения конфигураций. В результате объединения, к метаданным тестируемой базы будут добавлены объекты и общие модули, необходимые для работы Тест-центра.

Рисунок 1 - Схема работы «Тест центр» 1С: КИП

Таким образом, используя инструментарий 1С: КИП, на основании имеющихся данных в реальных производственных баз 1С - программист формирует полноценный автоматический сценарий тестирования, основанный на перечне документов и справочников, ключевых для данного типа конфигурации (заявка на расходование средств, заказ поставщику, реализация товаров и услуг и т.д.). При запуске сценария Тест-центр будет автоматически воспроизводить многопользовательскую деятельность, описанную в сценарии. Для этого Тест-центр создаст необходимое количество виртуальных пользователей (в соответствии со списком ролей) и запустит выполнение действий.

Параметры тестирования

При настройке сценариев тестирования для достоверной имитации одновременной работы большого количества пользователей задаются определенные параметры тестирования для каждого типа документа (см. таблицу 1):

  • Документ – указывает конкретный документ в рабочей базе, на основе которого будет производиться нагрузочное тестирование
  • Приоритет запуска – формирует порядок запуска тестов для каждого типа документов
  • Количество документов – определяет объем формируемых тестовых документов
  • Пауза, секунд – задержка при запуске серии тестов, в рамках одного типа документов
  • Количество строк в документе – информационный указатель, сообщающий о «массивности» тестового документа, что влияет на время обработки и нагрузку на ресурсы

Тесты выполняются в 3 итерациях, результаты записываются в таблицу. Таким образом, полученные итоги тестирования, измеряемые в секундах, наиболее реалистично и объективно отображают уровень производительности баз 1С в условиях, максимально приближенных к реальным (см. таблицу 3.1 и 3.2).

Таблица 1. Параметры тестовых сценариев

Документ Приоритет запуска Количество документов Пауза, секунд Количество строк в документе
Роль 1 Счет покупателю 1 25 51 62
Поступление товаров 2 25 80
Реализация товаров 3 25 103
Платежные поручения 4 25 1
Возвраты покупателя 5 25 82
Роль 2 Счет покупателю 5 10 65 79
Поступление товаров 1 22 80
Реализация товаров 2 25 103
Платежные поручения 3 25 1
Возвраты покупателя 4 25 75
Роль 3 Счет покупателю 4 15 45 76
Поступление товаров 5 26 80
Реализация товаров 1 52 103
Платежные поручения 2 26 1
Возвраты покупателя 3 32 90
Роль 4 Счет покупателю 3 45 38 70
Поступление товаров 4 30 80
Реализация товаров 5 30 103
Платежные поручения 1 20 1
Возвраты покупателя 2 20 86
Роль 5 Счет покупателю 2 30 73 76
Поступление товаров 3 30 80
Реализация товаров 4 30 103
Платежные поручения 5 18 1
Возвраты покупателя 1 18 91
Роль 6 Счет покупателю 1 40 35 86
Поступление товаров 2 40 80
Реализация товаров 3 40 103
Платежные поручения 4 40 1
Возвраты покупателя 5 40 88
Роль 7 Счет покупателю 5 25 68 80
Поступление товаров 1 25 80
Реализация товаров 2 25 103
Платежные поручения 3 25 1
Возвраты покупателя 4 25 90
Роль 8 Счет покупателю 3 25 62 87
Поступление товаров 4 25 80
Реализация товаров 5 25 103
Платежные поручения 1 25 1
Возвраты покупателя 2 25 92
Роль 9 Счет покупателю 2 20 82 82
Поступление товаров 4 20 80
Реализация товаров 5 20 103
Платежные поручения 1 20 1
Возвраты покупателя 3 20 98
Роль 10 Счет покупателю 4 50 2 92
Поступление товаров 1 50 80
Реализация товаров 2 50 103
Платежные поручения 5 50 1
Возвраты покупателя 3 50 98

Таблица 2. Технические характеристики тестового стенда

№п\п Роль системы CPU\vCPU RAM, Гб Дисковая система ввода\вывода
1 Сервер терминалов – виртуальная машина для управления тестами 4 ядра
2.9 GHz
16 Гб Intel Sata SSD Raid1
2 Сценарий 1. Сервер 1С + СУБД аппаратный Intel Xeon E5-2690
16 ядер
96 Гб Intel Sata SSD Raid1
3 Сценарий 2. Сервер 1С + СУБД виртуальные 16 ядер
2.9 GHz
64 Гб Intel Sata SSD Raid1
4 Сценарий 3. Сервер 1С виртуальный 16 ядер
2.9 GHz
32 Гб Intel Sata SSD Raid1
5 Сценарий 4. Сервер СУБД виртуальный 16 ядер
2.9 GHz
32 Гб Intel Sata SSD Raid1
6 Программное обеспечение
  • Microsoft Windows Server 2016 DataCenter
  • Microsoft Windows Server 2016 Standart
  • Microsoft SQL Server 2016 SP1 (13.0.4001.0)
  • Гипервизор Hyper-V
  • Сервер 1C:Предприятие 8.3.10.2667
  • CentOS 7.4.1708 (x64)
  • PostgreSQL 9.6.5+Patch PostgreSQL 9.6.5-4.1C
7 Конфигурации 1С
  • Однопоточный синтетический тест платформы 1С:Предприятие + Многопоточный тест записи на диск (2.1.0.7) Гилёв Вячеслав Валерьевич
  • Размер 0,072 Гб
  • Платформа: 1С:Предприятие 8.3 (8.3.10.2667)
  • Конфигурация: Бухгалтерия предприятия КОРП, редакция 3.0 (3.0.52.39)
  • Режим: Серверный (сжатие: усиленное)
  • Приложение: Тонкий клиент
  • Локализация: Информационная база: русский (Россия), Сеанс: русский (Россия)
  • Вариант интерфейса: Такси
  • Размер 9,2 Гб
  • Платформа: 1С:Предприятие 8.3 (8.3.10.2667)
  • Конфигурация: Управление торговлей, редакция 11 (11.3.4.21)
  • Режим: Серверный (сжатие: усиленное)
  • Приложение: Тонкий клиент
  • Локализация: Информационная база: русский (Россия), Сеанс: русский (Россия)
  • Вариант интерфейса: Такси
  • Размер 11,8 Гб

Таблица 3.1 Результаты тестирования с помощью теста Гилева (TPC-1C). Оптимальным считается наибольшее значение

Операционная система Microsoft Server Операционная система класса Unix
Перечень тестов (среднее значение по итогам серии из 3 тестов) Аппаратный сервер 1С+СУБД, протокол SharedMemory Виртуальный сервер 1С+СУБД, протокол SharedMemory Аппаратный сервер 1С и аппаратный сервер СУБД, протокол TCP-IP Виртуальный сервер 1С и виртуальный сервер СУБД, протокол TCP-IP Отдельный сервер 1С и аппаратный сервер СУБД, протокол TCP-IP Отдельный сервер 1С и виртуальный сервер СУБД, протокол TCP-IP
Проведение тестов Гилева 29,47 ед. 27,897 ед. 28,520 ед. 24,153 ед. 32,263 ед. 24,591 ед.

Таблица 3.2 Результаты тестирования с помощью специального теста 1С:КИП. Оптимальным считается наименьшее значение

Операционная система Microsoft Server Операционная система класса Unix
Перечень тестов (среднее значение по итогам серии из 3 тестов) Аппаратный сервер 1С+СУБД, протокол SharedMemory Виртуальный сервер 1С+СУБД, протокол SharedMemory Аппаратный сервер 1С и аппаратный сервер СУБД, протокол TCP-IP Виртуальный сервер 1С и виртуальный сервер СУБД, протокол TCP-IP Аппаратный сервер 1С и аппаратный сервер СУБД, протокол TCP-IP Виртуальный сервер 1С и виртуальный сервер СУБД, протокол TCP-IP
Проведение тестов 1С:КИП на существующей базе, конфигурация Бухгалтерия Предприятия
Оборотно сальдовая ведомость 1,741 сек 2,473 сек 2,873 сек 2,522 сек 13,866 сек 9,751 сек
Проведение возврата товаров от покупателей 0,695 сек 0,775 сек 0,756 сек 0,781 сек 0,499 сек 0,719 сек
Проведение платежных поручений 0,048 сек 0,058 сек 0,063 сек 0,064 сек 0,037 сек 0,065 сек
Проведение ПТИУ 0,454 сек 0,548 сек 0,535 сек 0,556 сек 0,362 сек 0,568 сек
Проведение реалиизации товаров и услуг 0,667 сек 0,759 сек 0,747 сек 0,879 сек 0,544 сек 0,802 сек
Проведение счета на оплату 0,028 сек 0,037 сек 0,037 сек 0,038 сек 0,026 сек 0,038 сек
Расчет калькуляций себестоимости 3,071 сек 3,657 сек 4,094 сек 3,768 сек 15,175 сек 10,68 сек
Проведение тестов 1С:КИП на существующей базе, конфигурация Управление Торговлей
Проведение и возврат от клиента 2,192 сек 2,113 сек 2,070 сек 2,418 сек 1,417 сек 1,494 сек
Проведение и возврат товаров поставщику 1,446 сек 1,410 сек 1,359 сек 1,467 сек 0,790 сек 0,849 сек
Проведение заказа клиента 0,355 сек 0,344 сек 0,335 сек 0,361 сек 0,297 сек 0,299 сек
Проведение пересчета товаров 0,140 сек 0,134 сек 0,131 сек 0,144 сек 0,100 сек 0,097 сек
Проведение поступления ТУ 1,499 сек 1,438 сек 1,412 сек 1,524 сек 1,097 сек 1,189 сек
Проведение реализации ТУ 1,390 сек 1,355 сек 1,308 сек 1,426 сек 1,093 сек 1,114 сек
Проведение РКО 0,759 сек 0,729 сек 0,713 сек 0,759 сек 0,748 сек 0,735 сек

Выводы и рекомендации авторов:

  1. В специальном тесте 1С операции «чтения данных и сложных вычислений», такие как «Оборотно-сальдовая ведомость» и «Расчет калькуляций себестоимости» в несколько раз быстрее выполняются на СУБД MS SQL от Microsoft.
  2. При операциях «записи данных и проведения документов» в большинстве тестов лучший результат показывает СУБД PostgreSQL, оптимизированный для 1С.
  3. Синтетический тест Гилева также показывает преимущество PostgreSQL. Связан данный факт с тем, что синтетический тест основан на измерении скорости создания и проведения определенных типов документов, что считается также операциями «записи данных и проведения документов».

Закончим с кроссплатформенным сравнением, перейдем к сравнениям внутри каждой системы:

  1. Ожидаемо, тесты 1С на аппаратной платформе показывают результаты лучше, чем на виртуальной. Разница в результатах специального теста 1С в обоих случаях невелика, что свидетельствует о постепенной оптимизации производителями виртуальных гипервизоров.
  2. Также ожидаемо, что использование технологии разделяемой памяти (SharedMemory) ускоряет процесс обмена данными между сервером 1С и СУБД. Соответственно, показания тестов немного лучше, чем у схемы с сетевым взаимодействием этих двух сервисов посредством протокола TCP-IP.

Можно сделать вывод, что при верной настройке 1С и СУБД, можно добиться значительных результатов даже на бесплатном программном обеспечении. Поэтому при проектировке новой ИТ-структуры для 1С требуется учитывать уровень нагрузки на систему, тип превалирующих операций в базе, имеющийся бюджет, наличие специалиста по нестандартным СУБД, необходимость интеграции с внешними сервисами и т.д. Исходя из этих данных, уже можно подбирать требуемое решение.

Читайте продолжение тестирования здесь.



EFSOL

Системная интеграция. Консалтинг

Корпоративное облако

обязательные поля
* Антиробот:
Введите ответ

Корпоративное облако

Все поля формы выделенные значком * обязательны к заполнению
* Антиробот:
Введите ответ
  • 1. Поясните что такое "Отдельный сервер 1С" в графе с UNIX системами. Правильно ли я понял что его аналог в колонке Windows - "это Аппаратный сервер 1С". Если да, то почему названия разные. 2. В таблице 3.2 первый и последний тест на линуксе значительно хуже - раз так в 5. ЧТо за аномалия такая? При том в тех тестах где Windows проигрывает - разница максимум в 2 раза.
  • Здравствуйте, Олег! 1. Верно, этот термин означает аппаратный сервер. Названия разные для стилистической разгрузки текста. Р?справим РІ таблице, чтобы было однозначное понимание. 2. Да, РјС‹ даже сделали СѓРїРѕСЂ РЅР° этот факт РІ выводах - СЃСѓРґСЏ РїРѕ тестам, MS SQL сильно оптимизирован РїРѕРґ операции чтения данных Рё сложных вычислений 1РЎ
  • РњРЅРµ кажется, что РіРѕРІРѕСЂСЏ Рѕ бесплатном программном обеспечении, важно обязательно говорить РѕР± условно-бесплатном его характере - поскольку стоимость часа поддержки такого РџРћ будет значительно выше, чем стоимость поддержки платного - СЏ сейчас РІРёРґСѓ речь РѕР± MS SQL Рё PostgreSQL. Так, найти специалиста который инсталирует систему Рё будет ее поддерживать РЅР° MSSQL значительно проще Рё дешевле, чем РЅР° Postgre. Продолжая эту мысль, также хочется заметить, что РІС‹ Рё бизнес, можете стать заложниками Сѓ такого специалиста РїСЂРё использовании бесплатного РџРћ. ПОэтому стоит 1000 раз задуматься, прежде чем выбирать такую архитектуру. Почему была выбрана система виртуализации Hyper-V для Unix-подобных систем? Ведь, возможно, производительность Сѓ Postgre РЅР° Xen или VMWare выросла, РІС‹ РЅРµ проводили сравнительных тестов?
  • 1. Вы совершенно правы - стоимость поддержки "гибкого" и бесплатного ПО гораздо выше, а шансы найти толкового профи - гораздо меньше по сравнению с системными платными продуктами Microsoft 2. Согласны, бизнесу требуется выбрать решение, ориентируясь на свои приоритеты и цели в ИТ - гибкость, бюджетность, надежность, гарантии, поддержка и т.д. 3. Система виртуализации Hyper-V для Unix-подобных систем была выбрана только лишь для достоверности тестирования, приведения услоий к единому знаменателю 4. Тесты на платформах Xen или VMWare будут запланированы в последующих статьях
  • Согласен СЃ замечанием Гостя РїРѕ РїРѕРІРѕРґСѓ гипервизора. Видел тесты сравнения гипервизоров Рё РІ некоторых случаях VMWare виртуализация показывала результат соизмеримый СЃ аппаратными серверами РІ то время как Hyper-V отставал РѕС‚ аппаратного сервера сильно. РџРѕ-этому добавить РІ тест еще РѕРґРёРЅ гипервизор было Р±С‹ интересно
  • РЇ РЅРµ совсем РїРѕРЅСЏР», Р° почему нет теста РіРґРµ РЅР° линуксе стоят вместе РїРѕСЃРіСЂРё Рё 1СЃ сервер?
  • РЇ РЅРµ совсем РїРѕРЅСЏР», Р° почему нет теста РіРґРµ РЅР° линуксе стоят вместе РїРѕСЃРіСЂРё Рё 1СЃ сервер?
  • Здравствуйте, Роман! Поскольку взаимодействие сервера 1С и СУБД на базе UNIX не имеет механизма прямого доступа к памяти DNA (в отличие от технологии SharedMemory у Microsoft), т.е. соединения все равно происходят через сетевые протоколы TCP-IP, то использование данного ПО совместно на одной площадке: 1. Нарушило бы стандарт тестового стенда, где сравнение систем, работающих по TCP-IP, ведется на базе двух разных серверов 2. Ухудшило бы результаты тестирования UNIX, т.к. и 1С и PostgreSQL использовали бы один пул ресурсов.

У вас конкретная задача? Свяжитесь с нами прямо сейчас!

Обратный звонок RedConnect