Скорость работы 1С: Предприятие с разными СУБД: MS SQL и с PostgreSQL

20.02.19

База данных - Инструменты администратора БД

Рассмотрим несколько вариантов работы 1С: Предприятие с различными СУБД.

В данной статье я хочу привести сравнение скорости работы 1С: Предприятие 8.3 при использовании разных СУБД.

На написание этой статьи меня вдохновила отличная статья Немного о конфигурировании PostgreSQL и 1С Батл: PostgreSQL 9,10 vs MS SQL 2016.

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

Вступление

31.01.2019 года компания 1С выпустила долгожданный релиз платформы 8.3.14.1565. 

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

Но возникает закономерный вопрос - какова скорость работы платформы, при использовании различных СУБД и различном расположении сервера 1С?

Я не буду сравнивать разные версии самих платформ 1С. Я хочу получить информацию как ведет себя платформа 8.3.14 при работе с MS SQL  и с PostgreSQL. Как ведет себя 1С при работе на Windows или на Linux системах? В каком случае есть смысл остаться на файловых базах, а когда таки надо брать серверные, и какой прирост или падение производительности будет в этом случае.

В своей работе я довольно часто сталкиваюсь одними и теми же вопросом. Какое программное обеспечение необходимо использовать в работе баз данных 1С? Что нужно для полноценной работы, например магазина retail? А если это несколько магазинов, то какой вариант ПО необходим в этом случае? Какой минимальный набор оборудования необходим? Что лучше: платный софт или же можно использовать бесплатный?

Попробую рассмотреть некоторые вопросы на примерах в этой статье.

Выбор софта для работы

На сегодняшний день практически все, кто работает в среде 1С, так или иначе сталкиваются с вопросом "а какое оборудование нам надо?", "какие требования по железу необходимы?" и по сути - все вопросы крутятся вокруг одного слова - бюджет.

Если мы говорим про отдельно взятый магазин, где будет находится локальная база (РИБ, например), и все торговые операции будут совершатся на "кассе", то наличия одного компьютера думаю вполне хватит, вот только какую ОС на него ставить? Какой софт использовать?

И с какого количества касс есть смысл ставить уже отдельный сервер в магазине, ну и какие плюсы/минусы такого решения.

И такие вопросы появляются изо дня в день.

Я не буду рассматривать цены на сборку и покупку компьютеров, серверов и любого другого железа. Меня больше интересует вопрос об используемом на нём программного обеспечения. Так как заведомо, если есть бюджет, который обычно выделяется на рабочее место, то у нас два варианта - взять мощнее оборудование и взять бесплатный софт, или купить платный софт, но остаться на том что есть, или купить новое, но хуже.

Посмотреть какие системные требования к операционной системе для работы 1С можно здесь. Из всего списка, нас интересуют Windows и Linux. Так как MacOS на кассах мы не видели. Хотя, сейчас на кассах начинают появляться устройства на базе ОС Android и iOS.

Следующий этап, это приобретение лицензии 1С. Перечень продуктов и цен на них можно посмотреть здесь

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

Если необходим клиент-серверный вариант работы базы данных, то для этого приобретаются другие лицензии. Однозначно необходима лицензия на сам программный продукт, например 1С:Розница 8 ПРОФ, а также лицензия на сервер 1С, например 1С 8.3 ПРОФ. Лицензия на сервер (x86 и/или x64), и необходимое количество клиентских лицензий для работы пользователей в базе.

Сразу возникает вопрос: Если выбран клиент-серверный вариант, то база 1С будет расположена в какой-нибудь СУБД. В какой?

На текущий момент 1С может работать с 4 СУБД: Microsoft SQL Server, PostgreSQL, IBM DB2 и Oracle Database.

Исторически сложилось, что 1С давно и хорошо работает с СУБД Microsoft SQL Server. 

MS SQL является коммерческим продуктом и стоит денег. Последняя версия MS SQL на текущий момент - 2017. Существуют несколько редакций продукта, которые имеют свои возможности и ограничения, следовательно и разную стоимость. Есть и функционально ограниченная бесплатная версия.

Однако хочу отметить, что выбрав в качестве СУБД MS SQL, устанавливать её нужно будет на ОС семейства Windows, т.к 1С, пока,  не работает с MS SQL, которая установлена на Linux системах, при чем в независимости от того - на какой ОС расположен сервер 1С. 

Следующий вопрос: какую ОС Windows необходимо приобретать? Если мы говорим о количестве пользователей, работающих удаленно (RDP), больше одного, тогда Windows 10 не подходит для этих целей. Выбор очевиден - ОС Windows Server. С другой стороны, с развитием тонких клиентов - люди все реже и реже подключаются по RDP, а выбирают работу через тонкий клиент по вебу.

На текущий момент компания Microsoft выпустила ОС Windows Server 2019. Есть хорошая статья, которая описывает условия лицензирования этой ОС.  

Альтернативный вариант использования файловой базы или клиент-серверной - это использовать ОС семейства Linux.

Сегодня 1С хорошо работает в Linux системах, стабильно. Сама по себе ОС является бесплатной, что позволяет значительно экономить бюджетные средства.

При клиент-серверном варианте работы, можно также использовать СУБД  PostgreSQL, которая является бесплатной для использования. Более того, PostgreSQL может работать как на Linux системе, так и на Windows ОС в паре с сервером 1С.

Таким образом можно также значительно сэкономить бюджетные средства, выбрав это ПО.

СУБД IBM DB2 и Oracle Database являются также коммерческими (условно-бесплатными) продуктами, которые работают с 1С: Предприятие, однако большой популярности в среде 1С не получили.

Стоит отдельно отметить наличие сборки "Мини сервер 1С", куда входит ключ 1С сервера и 5 пользовательских лицензий, что стоит дешевле, чем отдельно покупать сервер и 5 лицензий.

Хочу вернуться к вопросам, которые я задал в начале этой статьи: какое ПО лучше использовать? Платное или бесплатное? В чем разница?

Для ответа на эти вопросы я решил провести ряд тестов, которые показывают скорость работы базы 1С в разной среде.

Вкратце на счет оборудования:

Относительно выбора оборудования, на мой взгляд, важными являются следующие критерии - SSD (лучше NVMe), высокая частота процессора. Остальное - выбирается под конкретные нужды. Если этот вопрос интересен, то могу поделиться подробно своим мнением в комментариях.

Однако, нас все же интересует вопрос производительности 1С в тех или иных условиях, в зависимости от задач.

Например, есть клиент, у него 100 РИБ узлов, у него около 100 000 товаров, и более 1 000 000 характеристик и штрихкодов. И вот приходит запрос - какое оборудование купить на кассы, а какое на сервер, и есть ли смысл ставить сервер на кассы?

Сейчас в сети много тестов (в том числе Гилева), есть APDEX от 1С и т.д, но в нашем случае это все бесполезно, ибо с самой кассы уходит мало данных, операций в кассе делается не много, и самые сложные - это пробитие Чека ККМ. НО вот на саму кассу приходит огромное количество данных, особенно в межсезонье, очень много данных по сегментам скидок, по новому товару, новые штрихкода, документы перемещений и т.д.

Отсюда возникает вопрос - какая конфигурация оборудования и софта нас устроит, чтобы в течении краткого времени получить всю нужную информацию на кассе. Т.е. нас интересуют реальные цифры создания объектов в базе, проведение документов и т.д., причем именно последовательные операции, так как типовые обмены именно так и передают данные.

Сразу хочу обратить внимание, что все данные рекомендации и методы замеров основаны на задаче когда доступ в ЦБ имеют около 5 человек в 90% случаях, и только изредка, к ЦБ могут подключиться в онлайне все кассы, такое бывает в случаях, когда ночной обмен не успел пройти, срочные изменения цен/скидок, не успел выгрузиться новый товар и т.д.

Тестирование

Виды тестов

Какие тесты будут проводится и чем, собственно, тестировать?

В этой статье я использовал 2 вида тестов:

  • Нагрузочный тест TPC-1C. На этот тест я обратил внимание, потому что в нём учитываются настройки СУБД, ОС так и сама аппаратная часть стенда.

  • Некий наш внутренний нагрузочный тест, который показывает скорость выполнения разных сценариев. Например - создание справочника, проведение документа по одному регистру с разным количеством строк, удаление объектов, срезы разные и т.д. 

Тестирование платформы на Windows Server 2019 + MS SQL 2017 на одной машине

В качестве стенда для тестов была создана виртуальная машина со следующими характеристиками:

CPU Intel Core i3-8100 3.6GHz

RAM 8 Gb DDR-4 3200 MHz

Samsung SSD 960 EVO NVMe M.2

Была произведена чистая установка ОС Microsoft Windows Server 2019 RTM Build 17763 Standard.

Была установлена СУБД MS SQL 2017 Developer, а также SQL Server Management Studio 17 для управления СУБД в графическом режиме.

 

Настройки СУБД были приведены к следующим:

Количество максимально потребляемой СУБД оперативной памяти выставлено 4Гб.

Стоит галочка "Приоритет SQL сервера". Максимальное количество рабочих потоков выставлено 2048.

 

Была установлена платформа 1С: Предприятие 8.3.14.1565 x64

и создана база onecdb в клиент-серверном варианте

Результат нагрузочного теста TPC-1C выглядит так:

При запуске второго теста из используемых, я установил следующие показатели при замерах:

И получил такой результат. Количество баллов - это тоже самое время в мс, т.е. чем меньше - тем лучше.

Название операции Время выполнения Количество баллов
 Создать и провести документ Приход 200 штук, по 1,000 позиций товара в каждом 00:01:53, 671мс 113671
 Создать и провести документ Установка цен 100 штук, по 1,000 позиций товара в каждом 00:00:52, 327мс 52327
 Удалить документ Приход 200 штук, по 1,000 позиций товара в каждом 00:00:24, 500мс 24500
Очистка штрихкодов 120,000 метод Набором  00:06:47, 181мс 407181
Получение оборотов, количество строк: 1,000 235мс 235
Получение остатков, количество строк: 1,000 16мс 16
Получение первого среза цен для 1,000 655мс 655
Получение последнего среза цен для 1,000 625мс 625
Создание номенклатуры 10,000 00:00:58, 624мс 58624
Создание штрихкодов 120,000 метод Набором  00:00:08, 484мс 8484
Удаление номенклатуры 10,000 00:00:54, 593мс 54593
Количество баллов 00:12:00, 911мс 720911

 

Тестирование платформы на Debian 9.7 + PostgreSQL 11 на одной машине

В качестве стенда для тестов была создана виртуальная машина с такими же характеристиками. О том, как это сделать самостоятельно, можно прочитать в моей предыдущей статье

Была произведена чистая установка ОС Debian 9.7

Была установлена СУБД PostgreSQL 11 (сборка от Postgrespro)

Был установлен сервер 1С: Предприятие 8.3.14.1565

И создана база onecpg в клиент-серверном варианте

Результат нагрузочного теста TPC-1C выглядит так:

* тест произведен без оптимизации PSQL

Результат нагрузочного теста TPC-1C при оптимизации PSQL:

* для оптимизации PSQL я воспользовался утилитой PGTune. Оптимизация делалась "поверхностно"  под аппаратную конфигурацию стенда, так как более глубокие настройки делаются под определенные объемы БД, их количество на одном сервере и под определенное количество пользователей. Файл конфигурации привел к такому виду:

# DB Version: 11
# OS Type: linux
# DB Type: mixed
# Total Memory (RAM): 8 GB
# CPUs num: 4
# Connections num: 10
# Data Storage: ssd

max_connections = 10
shared_buffers = 2GB
effective_cache_size = 6GB
maintenance_work_mem = 512MB
checkpoint_completion_target = 0.9
wal_buffers = 16MB
default_statistics_target = 100
random_page_cost = 1.1
effective_io_concurrency = 200
work_mem = 104857kB
min_wal_size = 1GB
max_wal_size = 2GB
max_worker_processes = 4
max_parallel_workers_per_gather = 2
max_parallel_workers = 4
superuser_reserved_connections = 3
max_wal_senders = 0
standard_conforming_strings = off

listen_addresses = '*'
port = 5432

Запуск второго теста до оптимизации PSQL показал такие результаты

Название операции Время выполнения Количество баллов
 Создать и провести документ Приход 200 штук, по 1,000 позиций товара в каждом 00:01:25, 746мс 85746
 Создать и провести документ Установка цен 100 штук, по 1,000 позиций товара в каждом 00:00:41, 725мс 41725
 Удалить документ Приход 200 штук, по 1,000 позиций товара в каждом 00:00:06, 587мс 6587
Очистка штрихкодов 120,000 метод Набором  00:05:48, 601мс 348601
Получение оборотов, количество строк: 1,000 59мс 59
Получение остатков, количество строк: 1,000 3мс 3
Получение первого среза цен для 1,000 00:00:01, 43мс 1043
Получение последнего среза цен для 1,000 00:00:01, 49мс 1049
Создание номенклатуры 10,000 00:00:42, 682мс 42682
Создание штрихкодов 120,000 метод Набором  00:00:05, 392мс 5392
Удаление номенклатуры 10,000 00:00:50, 467мс 50467
Количество баллов 00:09:43, 354мс 583354

Результат второго теста после оптимизации

Название операции Время выполнения Количество баллов
 Создать и провести документ Приход 200 штук, по 1,000 позиций товара в каждом 00:01:24, 118мс 84118
 Создать и провести документ Установка цен 100 штук, по 1,000 позиций товара в каждом 00:00:39, 620мс 39620
 Удалить документ Приход 200 штук, по 1,000 позиций товара в каждом 00:00:06, 493мс 6493
Очистка штрихкодов 120,000 метод Набором  00:05:38, 698мс 338698
Получение оборотов, количество строк: 1,000 46мс 46
Получение остатков, количество строк: 1,000 4мс 4
Получение первого среза цен для 1,000 00:00:01, 44мс 1044
Получение последнего среза цен для 1,000 00:00:01, 42мс 1042
Создание номенклатуры 10,000 00:00:43, 562мс 43562
Создание штрихкодов 120,000 метод Набором  00:00:05, 693мс 5693
Удаление номенклатуры 10,000 00:00:46, 456мс 46456
Количество баллов 00:09:26, 776мс 566776

Тестирование платформы на Debian 9.7 + PostgreSQL 10.5-11.1C (сборка от 1С) на одной машине

В качестве стенда для тестов была создана виртуальная машина с такими же характеристиками.

Была произведена чистая установка ОС Debian 9.7

Была установлена СУБД PostgreSQL 10.5-11.1C (сборка от 1C)

Был установлен сервер 1С: Предприятие 8.3.14.1565

Результат нагрузочного теста TPC-1C выглядит так:

* тест произведен без оптимизации PSQL

Запуск второго теста  показал такие результаты

Название операции Время выполнения Количество баллов
 Создать и провести документ Приход 200 штук, по 1,000 позиций товара в каждом 00:01:23, 119мс 83119
 Создать и провести документ Установка цен 100 штук, по 1,000 позиций товара в каждом 00:00:41, 404мс 41404
 Удалить документ Приход 200 штук, по 1,000 позиций товара в каждом 00:00:06, 557мс 6557
Очистка штрихкодов 120,000 метод Набором  00:05:52, 474мс 352474
Получение оборотов, количество строк: 1,000  49мс 49
Получение остатков, количество строк: 1,000 4мс 4
Получение первого среза цен для 1,000 00:00:01, 176мс 1176
Получение последнего среза цен для 1,000 00:00:01, 141мс 1141
Создание номенклатуры 10,000 00:00:41, 958мс 41958
Создание штрихкодов 120,000 метод Набором  00:00:05, 223мс 5223
Удаление номенклатуры 10,000 00:00:46, 143мс 46143
Количество баллов 00:09:39, 248мс 579248

 

Тестирование платформы на Debian 9.7 + MS SQL 2017

В качестве стенда для тестов была создана виртуальная машина с такими же характеристиками.

Была произведена чистая установка ОС Debian 9.7

Была установлена СУБД MS SQL 2017

Был установлен сервер 1С: Предприятие 8.3.14.1565

При создании базы данных я получаю ошибку

что собственно и логично, т.к. сервер 1С + MS SQL на линуксе пока не работает.

 

Теперь проведем ряд тестов, использую сервер 1С: Предприятие на одной машине, а сервер СУБД на другой

Debian 9.7 + PostgreSQL | Windows Server 2019 + 1C: Предприятие

Результат нагрузочного теста TPC-1C выглядит так:

Результат второго теста:

Название операции Время выполнения Количество баллов
 Создать и провести документ Приход 200 штук, по 1,000 позиций товара в каждом 00:02:13, 418мс 133418
 Создать и провести документ Установка цен 100 штук, по 1,000 позиций товара в каждом 00:01:07, 686мс 67686
 Удалить документ Приход 200 штук, по 1,000 позиций товара в каждом 00:00:10, 609мс 10609
Очистка штрихкодов 120,000 метод Набором  00:07:47, 276мс 467276
Получение оборотов, количество строк: 1,000 63мс 63
Получение остатков, количество строк: 1,000 0мс 0
Получение первого среза цен для 1,000 00:00:01, 468мс 1468
Получение последнего среза цен для 1,000 00:00:01, 469мс 1469
Создание номенклатуры 10,000 00:00:55, 555мс 55555
Создание штрихкодов 120,000 метод Набором  00:00:07, 327мс 7327
Удаление номенклатуры 10,000 00:01:04, 406мс 64406
Количество баллов 00:13:29, 277мс 809277

 

Windows Server 2019 + MS SQL 2017 | Windows Server 2019 + 1C: Предприятие

Результат нагрузочного теста TPC-1C выглядит так:

Результат второго теста:

Название операции Время выполнения Количество баллов
 Создать и провести документ Приход 200 штук, по 1,000 позиций товара в каждом 00:02:15, 940мс 13
 Создать и провести документ Установка цен 100 штук, по 1,000 позиций товара в каждом 00:01:05, 867мс 65867
 Удалить документ Приход 200 штук, по 1,000 позиций товара в каждом 00:00:23, 336мс 23336
Очистка штрихкодов 120,000 метод Набором  00:05:51, 602мс 351602
Получение оборотов, количество строк: 1,000 230мс 230
Получение остатков, количество строк: 1,000 8мс 8
Получение первого среза цен для 1,000 619мс 619
Получение последнего среза цен для 1,000 635мс 635
Создание номенклатуры 10,000 00:00:48, 558мс 48558
Создание штрихкодов 120,000 метод Набором  00:00:08, 470мс 8470
Удаление номенклатуры 10,000 00:00:49, 550мс 49550
Количество баллов 00:11:24, 815мс 684815

Результаты

Результаты нагрузочного теста TPC-1C

Сервер 1С + СУБД на одной машине Количество баллов Скорость диска в 1 поток Максимальная скорость
Windows Server 2019 + MS SQL 2017 22.52 66948 Кб/с 168805 Кб/с
Debian 9.7 + PostgreSQL 11 23.15/23.92 107992/114973 Кб/с 320746/321888 Кб/с
Debian 9.7 + PostgreSQL 10.5-11.1C 23.36 92714 Кб/с 279110 Кб/с

 

Сервер 1С и СУБД на разных машинах Количество баллов Скорость диска в 1 поток Максимальная скорость
Debian 9.7 + PostgreSQL | Windows Server 2019 + 1C: Предприятие 17.06 55559 Кб/с 131712 Кб/с
Windows Server 2019 + MS SQL 2017 | Windows Server 2019 + 1C: Предприятие 23.92 48859 Кб/с 125099 Кб/с

Результаты тестирования, где сервер 1С и СУБД находятся на одной машине

Сервер 1С + СУБД на одной машине Windows Server 2019 + MS SQL 2017 Debian 9.7 + PostgreSQL 11 Debian 9.7 + PostgreSQL 10.5-11.1C
Название операции Время выполнения Количество баллов Время выполнения Количество баллов Время выполнения Количество баллов Время выполнения Количество баллов
Создать и провести документ Приход 200 штук, по 1,000 позиций товара в каждом 00:01:53, 671мс 113671 00:01:25, 746мс 85746 00:01:24, 118мс 84118 00:01:23, 119мс 83119
Создать и провести документ Установка цен 100 штук, по 1,000 позиций товара в каждом 00:00:52, 327мс 52327 00:00:41, 725мс 41725 00:00:39, 620мс 39620 00:00:41, 404мс 41404
Удалить документ Приход 200 штук, по 1,000 позиций товара в каждом 00:00:24, 500мс 24500 00:00:06, 587мс 6587 00:00:06, 493мс 6493 00:00:06, 557мс 6557
Очистка штрихкодов 120,000 метод Набором  00:06:47, 181мс 407181 00:05:48, 601мс 348601 00:05:38, 698мс 338698 00:05:52, 474мс 352474
Получение оборотов, количество строк: 1,000 235мс 235 59мс 59 46мс 46  49мс 49
Получение остатков, количество строк: 1,000 16мс 16 3мс 3 4мс 4 4мс 4
Получение первого среза цен для 1,000 655мс 655 00:00:01, 43мс 1043 00:00:01, 44мс 1044 00:00:01, 176мс 1176
Получение последнего среза цен для 1,000 625мс 625 00:00:01, 49мс 1049 00:00:01, 42мс 1042 00:00:01, 141мс 1141
Создание номенклатуры 10,000 00:00:58, 624мс 58624 00:00:42, 682мс 42682 00:00:43, 562мс 43562 00:00:41, 958мс 41958
Создание штрихкодов 120,000 метод Набором  00:00:08, 484мс 8484 00:00:05, 392мс 5392 00:00:05, 693мс 5693 00:00:05, 223мс 5223
Удаление номенклатуры 10,000 00:00:54, 593мс 54593 00:00:50, 467мс 50467 00:00:46, 456мс 46456 00:00:46, 143мс 46143
Количество баллов 00:12:00, 911мс 720911 00:09:43, 354мс 583354 00:09:26, 776мс 566776 00:09:39, 248мс 579248

Результаты тестирования, где сервер 1С и СУБД находятся на разных машинах:

Сервер 1С и СУБД на разных машинах Debian 9.7 + PostgreSQL | Windows Server 2019 + 1C: Предприятие Windows Server 2019 + MS SQL 2017 | Windows Server 2019 + 1C: Предприятие
Название операции Время выполнения Количество баллов Время выполнения Количество баллов
 Создать и провести документ Приход 200 штук, по 1,000 позиций товара в каждом 00:02:13, 418мс 133418 00:02:15, 940мс 135940
 Создать и провести документ Установка цен 100 штук, по 1,000 позиций товара в каждом 00:01:07, 686мс 67686 00:01:05, 867мс 65867
 Удалить документ Приход 200 штук, по 1,000 позиций товара в каждом 00:00:10, 609мс 10609 00:00:23, 336мс 23336
Очистка штрихкодов 120,000 метод Набором  00:07:47, 276мс 467276 00:05:51, 602мс 351602
Получение оборотов, количество строк: 1,000 63мс 63 230мс 230
Получение остатков, количество строк: 1,000 0мс 0 8мс 8
Получение первого среза цен для 1,000 00:00:01, 468мс 1468 619мс 619
Получение последнего среза цен для 1,000 00:00:01, 469мс 1469 635мс 635
Создание номенклатуры 10,000 00:00:55, 555мс 55555 00:00:48, 558мс 48558
Создание штрихкодов 120,000 метод Набором  00:00:07, 327мс 7327 00:00:08, 470мс 8470
Удаление номенклатуры 10,000 00:01:04, 406мс 64406 00:00:49, 550мс 49550
Количество баллов 00:13:29, 277мс 809277 00:11:24, 815мс 684815

Тесты на файловых базах 1С

Результаты тестирования на Debian 9.7 + 1С 8.3.14.1565 и Windows 10 + 1С 8.3.14.1565

Файловая база 1С Debian 9.7 + 1C: Предприятие Windows 10 + 1C: Предприятие
Название операции Время выполнения Количество баллов Время выполнения Количество баллов
 Создать и провести документ Приход 200 штук, по 1,000 позиций товара в каждом 00:00:44, 355мс 44355 00:00:54, 219мс 54 219
 Создать и провести документ Установка цен 100 штук, по 1,000 позиций товара в каждом 00:00:20, 385мс 20385 00:00:26, 234мс 26 234
 Удалить документ Приход 200 штук, по 1,000 позиций товара в каждом 00:00:07, 723мс 7723 00:00:11, 563мс 11 563
Очистка штрихкодов 120,000 метод Набором  00:01:12, 522мс 72522 00:02:28, 359мс 148 359
Получение оборотов, количество строк: 1,000 136мс 136 171мс 171
Получение остатков, количество строк: 1,000 5мс 5 0мс 0
Получение первого среза цен для 1,000 610мс 610 750мс 750
Получение последнего среза цен для 1,000 600мс 600 750мс 750
Создание номенклатуры 10,000 00:00:18, 358мс 18358 00:00:30, 968мс 30 968
Создание штрихкодов 120,000 метод Набором  00:00:04, 658мс 4658 00:00:04, 937мс 4 937
Удаление номенклатуры 10,000 00:00:18, 279мс 18279 00:00:20, 219мс 20 219
Количество баллов 00:01:50,451мс 110451 00:02:24, 874мс 144 874

* тесты запускались 3 раза. Взято среднее значение тестов.

Результат нагрузочного теста TPC-1C выглядит так:

Файловая база 1С Количество баллов
Debian 9.7 + 1С: Предприятие 66.67
Windows 10 + 1С: Предприятие 49.5

Решил проверить скорость работы мобильного приложения 1С на нескольких телефонах. Использовал нагрузочный тест, который показывает скорость выполнения разных сценариев.

Результаты тестирования

Название тестов Samsung S9+ Xiaomi Mi5s Xiaomi MiA2Lite
Создать и провести документ Установка цен 100 штук, по 1 000 позиций товара в каждом 00:00:57, 137мс 57 137 00:02:32, 175мс 152 175 00:01:49, 993мс 109 993
Удалить документ Приход 200 штук, по 1 000 позиций товара в каждом 00:01:15, 430мс 75 430 00:02:04, 730мс 124 730 00:02:11, 194мс 131 194
Получение оборотов, количество строк: 1 000 00:00:01, 40мс 1 040 00:00:02, 216мс 2 216 00:00:02, 127мс 2 127
Получение остатков, количество строк: 1 000 28мс 28 61мс 61 53мс 53
Получение первого среза цен для 1 000 00:00:02, 528мс 2 528 00:00:05, 337мс 5 337 00:00:04, 658мс 4 658
Получение последнего среза цен для 1 000 00:00:02, 520мс 2 520 00:00:05, 692мс 5 692 00:00:04, 791мс 4 791
Создание номенклатуры 10 000 00:00:33, 796мс 33 796 00:01:41, 170мс 101 170 00:01:19, 443мс 79 443
Удаление номенклатуры 10 000 00:00:24, 366мс 24 366 00:01:22, 865мс 82 865 00:00:56, 635мс 56 635
Количество баллов 00:05:14, 604мс 314 604 00:13:13, 63мс 793 063 00:10:32, 393мс 632 393

Выводы

После ряда проведенных тестов, можно наглядно посмотреть как при одних и тех же условиях меняется производительность и скорость работы 1С: Предприятие.

  СУБД + Сервер 1С на одной машине   Сервер и СУБД разнесены   Файловые   Мобильные
Название операции Windows 2019 + MS SQL 2017 Debian 9.7 + PSQL 11
(до оптим)
Debian 9.7 + PSQL 11
(с оптим)
Debian 9.7 +
PSQL
10.5-11.1C
  Debian 9.7 +
PSQL
Win 2019 + 1C
Win 2019 +
MS SQL 2017
Win 2019 + 1C
  Debian 9.7 Windows 10   Samsung
S9+
Xiaomi
Mi5s
Xiaomi
MiA2Lite
Создать и провести документ  Приход 200 штук, по 1,000 товара 113 671 85 746 84 118 83 119   133 418 135 940   44 355 54 219   117 759 318 817 243 499
Создать и провести документ Установка цен 100 штук, по 1,000 товара 52 327 41 725 39 620 41 404   67 686 65 867   20 385 26 234   57 137 152 175 109 993
Удалить документ Приход 200 штук, по 1,000 товара 24 500 6 587 6 493 6 557   10 609 23 336   7 723 11 563   75 430 124 730 131 194
Очистка штрихкодов 120,000 метод Набором  407 181 348 601 338 698 352 474   467 276 351 602   72 522 148 359        
Получение оборотов, количество строк: 1,000 235 59 46 49   63 230   136 171   1 040 2 216 2 127
Получение остатков, количество строк: 1,000 16 3 4 4   0 8   5 0   28 61 53
Получение первого среза цен для 1,000 655 1 043 1 044 1 176   1 468 619   610 750   2 528 5 337 4 658
Получение последнего среза цен для 1,000 625 1 049 1 042 1 141   1 469 635   600 750   2 520 5 692 4 791
Создание номенклатуры 10,000 58 624 42 682 43 562 41 958   55 555 48 558   18 358 30 968   33 796 101 170 79 443
Создание штрихкодов 120,000 метод Набором  8 484 5 392 5 693 5 223   7 327 8 470   4 658 4 937        
Удаление номенклатуры 10,000 54 593 50 467 46 456 46 143   64 406 49 550   18 279 20 219   24 366 82 865 56 635
Количество баллов 720 911 583 354 566 776 579 248   809 277 684 815   110 451 144 874   314 604 793 063 632 393

При использовании варианта расположения сервера 1С с сервером СУБД на одной машине, вариант Linux + PSQL 11 работает быстрее (566776 балов) чем MS Windows + MS SQL (720911 балов), причем даже без настроек оптимизации (583354 бала) и не зависимо от версии PostgreSQL (579248 балов).

В варианте, когда сервер 1С: Предприятие стоит отдельно от сервера СУБД, то здесь быстрее работает ПО от Microsoft (684815 баллов), чем ПО на Linux (809277 баллов).Серверная база 1С работает быстрее в связке Linux + PostgreSQL + 1С: Предприятие (566776 баллов), чем MS Windows + MS SQL + 1С: Предприятие (720911 баллов).

При использовании файловой базы - явным "лидером" стала ОС Linux. 110451 балл, против 144874 балла.

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

Если мы говорим об организации рабочих мест на кассах магазинов, то есть смысл обратить внимание на бесплатное ПО. Работает оно не хуже платного, но бюджет экономит нам точно.

Но хочу сразу предупредить возможные комментарии - всё что ни делается, всё относительно! Ситуации разные, задачи разные. И здесь не затрагиваются вопросы организации хранения, дублирования, восстановления, безотказности в работе! И тем более здесь нет и не будет сравниваться информация по поводу возможностей тех, либо иных продуктов. 

Здесь показан сравнительный тест производительности 1С: Предприятие. 

P.S.

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

См. также

Автоподбор ролей для профилей и групп доступа в любых типовых базах 1С УТ 11, КА 2, ERP2, Розница 2/3, УНФ 16/3, БП 3, ЗУП 3 и подобных (УФ, Платформа 8.3.14+)

Инструменты администратора БД Роли и права 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 15.12.2023, версия 1.1.

14400 руб.

06.12.2023    3517    19    1    

38

Infostart УДиФ: Управление данными и формами

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 руб.

10.11.2023    4221    12    2    

36

SALE! %

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2880 руб.

14.01.2013    178545    1083    0    

861

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    27809    82    146    

60

Система хранения присоединенных файлов в томах на диске

Инструменты администратора БД Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Платные (руб)

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

4200 руб.

10.11.2015    61501    89    59    

74

"Менеджер потоков 2.1": УПП: "Восстановление партий"

Инструменты администратора БД Платформа 1С v8.3 1С:Управление производственным предприятием Россия Бухгалтерский учет Управленческий учет Платные (руб)

Как оптимизировать то, что, считалось, не поддается оптимизации? Как повысить доступность базы данных? Как проводить самую «времяемкую» операцию не по паре раз в неделю, а по несколько раз в день*? Ответ есть!

20000 руб.

12.09.2019    11846    5    9    

7

Хранилище файлов на SQL

Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Управленческий учет Платные (руб)

Привязка файлов / сканов к объектам 1С с сохранением их на SQL-сервере

12000 руб.

09.10.2019    11146    5    8    

9

Конфигурация Session Monitor

Мониторинг Инструменты администратора БД Платформа 1С v8.3 Россия Платные (руб)

Конфигурация Session Monitor предназначена для мониторинга сервера 1С с целью отслеживания чрезмерной нагрузки от конкретных сеансов и скорости реакции рабочих процессов.

1500 руб.

01.12.2020    14365    33    0    

48
Комментарии
Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
63. capitan 2470 21.02.19 18:03 Сейчас в теме
(28)дело в том что по постановке задачи есть решение - сервер мини на 5 пользователей
А так да - согласен. Это решение приемлемое для магазинов.
73. DitriX 2093 21.02.19 21:04 Сейчас в теме
(63) на сколько я помню - туда не входит субд
А скуль экспрес любит заканчиваться в самые важные моменты :(
75. capitan 2470 21.02.19 21:09 Сейчас в теме
(73)
SQL Server 2017 Express Максимальный размер базы данных 10 ГБ
Для магазина то должно хватить
https://www.microsoft.com/ru-ru/sql-server/sql-server-2017-editions
79. DitriX 2093 21.02.19 21:26 Сейчас в теме
(75) увы, с учетом розницы 2, где куча регистров, сегментов, движений та и прочего - хватает не на долго. А если есть еще и рабочие какие то модули, которые были добавлены - то и того меньше. Нашим клиентам хватает на пол года, но когда у тебя дофига магазинов, то получается что надо чистить базы чуть ли не каждый день :)
80. capitan 2470 21.02.19 21:29 Сейчас в теме
(79)Это в центральной базе. А в магазине то вряд ли 10 гб наберется.
А если это такой магазин что наберется - чего же он такой бедный?
82. DitriX 2093 21.02.19 21:33 Сейчас в теме
(80) ЦБ сейчас весит 200Гб+ за год работы, более 300 РИБов
Сотни тыщ товаров, миллионы штрихкодов, десятки миллионов цен и прочее веселье :)
Конечно все это в кассы не идет - ценны например каждый день по срезу выгружаются, и там более 200 000 цен каждый день на все кассы прет.
Сегменты очищаем на кассах, но вот товар, описание, документы, остатки и прочее - ест дофига. Магазин новый если открыть щас, выгрузить тольк НСИ - база весить будет более 5Гб.
109. triviumfan 93 22.02.19 08:53 Сейчас в теме
(79) подтверждаю, не хватает переферийке 10гб, Розница+Автозапчасти от Раруса
36. ansh15 21.02.19 13:34 Сейчас в теме
(21)
И что делать в случае если появляется некая проблема в работе с 1С на PG?

Судя по посту 23 в теме по ссылке , реагируют весьма оперативно, и даже предлагают некоторые решения.
(27) При этом, было бы не лишним добавить, что в Linux системах этой проблемы нет.
37. Крококот 21.02.19 13:54 Сейчас в теме
(36)
реагируют весьма оперативно


После этого сообщения прошло более месяца и проблема не решена без неприятных побочных эффектов (описываются в посте 55).

в Linux системах этой проблемы нет


Это пример проблемы "без участия 1С".
50. starik-2005 3036 21.02.19 16:31 Сейчас в теме
(21)
Если база на MS SQL и он честно приобретен, то можно писать в поддержку MS и требовать решения проблемы.
Как-то одни товарищи делились тем,как M$ решила их проблему: "у вас слишком много запросов к базе". Все.
97. Крококот 22.02.19 05:16 Сейчас в теме
(50)
Как-то одни товарищи


Рассказывая такое, стоит приводить описание проблемы. Хотя бы кратко.

Скорее всего описанная проблема


Разумеется, что вопрос предполагает то, что проблема не имеет решения в документации, на форумах и прочих легко доступных местах. Выше приводились примеры таких проблем, которые были не "скорее всего".
51. starik-2005 3036 21.02.19 16:32 Сейчас в теме
(21)
А в случае с Postgres что? Писать на форумы и молиться на то, что кто-то из знающих и умеющих найдет время и желание на решение этой проблемы?
Скорее всего описанная проблема сто раз была решена и на форумы писать не надо - достаточно их читать.
34. acsent 1200 21.02.19 13:04 Сейчас в теме
а что так памяти то мало поставили. хотя бы 16 надо было.
8 гиг на сервер 1с + скл - это не смешно даже
38. kauksi 216 21.02.19 15:14 Сейчас в теме
Цифры в статье показывают цены на капусту в Рязани. В одних случаях автор тесты запускает на хосте, а в других тонким клиентом цепляется на сервер. У сервера разных обьем памяти, сервер на том же хосте где и клиент и т.д. Проведи тест в равных условиях, на одном железе, но с разными софтом.
zolkin_i; +1 Ответить
40. DitriX 2093 21.02.19 15:37 Сейчас в теме
(38) выключите свет. они на него лезут!!! (с)
Статью вы не читаете? В смысл не вникаете?

Вы прям как блондинка из анекдота - "Дорогой, скажи не увиливая - да или нет! Почему вы насс считаете глупыми?!"
Ни в коем случае не хотел обидить вас как личность, если это таки случилось - заранее прошу прощения.

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

Ок, перефразирую - как вы ответите на вопрос человеку, который не удосужился даже взять и вникнуть в статью, прежде чем написать такой комментарий.

Давайте я вам помогу привести пример.
Вы, знающий человек. Который предварительно прочел статью https://infostart.ru/public/985501/, ссылка на которую есть в статье. Вы теперь точно знаете, что тест идет через Дебиан, где нет графического интерфейса, т.е. где запустить 1С в режиме клиента не возможно в принципе.
С другой стороны, вы хороший программист, который знает разницу между клиент серверными вызовами, и знает, что если подключиться через тонкий клиент к серверу, и выполнить серверную команду, при отсутствии контекста передачи данных формы - не будет никакой разницы где вызапустите клиента, мало того, результат серверных функций даже не зависит ни грамма от мощьности клиента, там может стоять хоть зеро клиент, пофиг, в этом как бы и суть тонкого клиента.

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

Вот как вы на него ответите?

При чем, вас должно насторожить заранее вот такое предложение:
У сервера разных обьем памяти

Ибо вы, читая внимательно статью - знаете, что такого не было. И все было одинаково.

По сему я хочу узнать у вас - как бы вы ответили?
39. capitan 2470 21.02.19 15:30 Сейчас в теме
Основной пробел выводов сделанных в статье - то что они опираются на однопользовательскую загрузку.
Результаты конечно тоже странноватые, единственное предположение что связке MS + MS SQL не хватило памяти и она просто свопила.
Память 8 Гб - уже в телефонах тестовых больше установлено.
Windows 10 на 8Гб браузер не может открыть с 10 вкладками, а вы собрали такой сервер
Крайне загадочные результаты
Я не видел вариантов чтобы настолько Postgres побеждал Microsoft.
Postgres + Linix идет вровень и может чуть быстрее на быстрых дисках чем MS + MS SQL
Но опять же только на средней нагрузке.
И Postgres + Microsoft на порядок раньше под нагрузкой устанет чем MS + MS SQL.
zolkin_i; +1 Ответить
41. DitriX 2093 21.02.19 15:40 Сейчас в теме
(39) предложите свой вариант тестов, мы по возможности попробуем его воспроизвести. Только так, чтобы он был повторяемый.
Ибо с нагрузочными тестами на многопоточность - все грустно, все очень сильно зависит от входящих условий.
То же количество пользователей - не показатель, в базе может сидеть 100 пользователей, и будет все ок, но вот зайдет аналитик и пипец - все, база дохнет. :)
44. kauksi 216 21.02.19 16:00 Сейчас в теме
(41) я лишь пытался понять, почему низкие результаты на таком же железе (Windows Server 2019 + MS SQL 2017 на одной машине) в однопоточном тесте Гилева (TPC). Следующий тест проходит (Debian 9.7 + PostgreSQL 11 на одной машине) уже в виртуалке! По скриншотам следующих тестов я пришел к выводу что условия запуска тестов были разные (обьем доступной памяти меньше). Что сранивается то? Скорость дискового драйвера без виртуалки и с оной? Максимальная скорость в однопотоке да в вирталке ниже. Клиент то Толстый заметьте! Какие выводы можно сделать? никаких! Хотите анализа - выгрузите таблицу теста TPC из формы теста в Excel и там справа цифры результатов по каждому тесту и там стройте графики.... делайте выводы...Вообщем за старания автору 5. А за результат - 1. Потому что его нет.
zolkin_i; DitriX; capitan; +3 Ответить
46. DitriX 2093 21.02.19 16:12 Сейчас в теме
(44) ВОТ! Спасибо за развернутый вопрос.
Да, действительно, тесты TPC - не имеют в некоторых случаях смысла, как минимум, потому что они работают в режиме толстого клиента.
С другой стороны - на протяжении всей конфы - цель не сами тесты Гилева, и сводная таблица и выводы сделаны не на их основе. Поэтому если вы хотите увидеть именно тесты Гилева, то да, эта статья не поможет вам.
Ибо цель статьи - не тесты Гилева, которые дают весьма не однозначные результаты в реальной жизни, та и гонять их в сфере ретейла смысла особого нет, в ретейле почти нигде нет глобальной многопоточности, и все сидят в РИБах, т.е. даже на 300 касс - одновременно в базе будет чидеть буквально пару пользователей. Ей там негде взяться, та же себестоимость обычно не считается в Рознице.

Так что сделайте поправку своих ожиданий на то, на что реально нацелена статья, и поймете - есть смысл вам использовать полученную информацию или нет.
45. capitan 2470 21.02.19 16:01 Сейчас в теме
https://infostart.ru/public/997111/ - единственный пока сервер который мне удалось пощупать и где под средней нагрузкой Postgres + Linix идет вровень с MS + MS SQL
А тесты вот эти - https://infostart.ru/public/173394/
И памяти добавьте или выложите принскрин с Performance monitor где видно что ее вам хватает
58. starik-2005 3036 21.02.19 17:18 Сейчас в теме
Так, еще раз внимательно прочитал статью и пришел к неутешительному выводу - документ расхода (РТУ), получающего данные остатков и списывающее по ФИФО остатки товаров, партий, резервов и т.д., и т.п., который встречается в реальном учете куда чаще, чем документ поступления и установки цен, не приведен в тесте.

Фактически основные документы торговой системы - это РТУ/ВТУ и ПКО/РКО/ПРС. Их о тут и нет. Поступление и установка цен - это разовые документы, клиенты их не видят и на очередь в кассу они не влияют. А вот расходные накладные и денежные документы влияют на скорость обслуживания клиентов, и этих документов куда больше. Было бы справедливо именно с этими документами в тестах играться.
YPermitin; +1 Ответить
67. DitriX 2093 21.02.19 20:44 Сейчас в теме
(58) это все сделано на самописной конфигурации с одним регистром, просто документ поступления делаем по регистрам остатков и оборотов движения, а установки цен - по регистру сведений.
Так как нас тут интересовало именно сравнить попугаев, так как в реальности все сложнее, и зависит от очень многих параметров.
60. capitan 2470 21.02.19 17:28 Сейчас в теме
Стоит галочка "Приоритет SQL сервера"
на сервере разделяемом с 1С эта галочка приведет к падениям платформы в продакте под нагрузкой.
Даже на ИТС написано про это
Если сервер 1С:Предприятия установлен вместе с Microsoft SQL Server, то данную настройку производить не нужно.

https://its.1c.ru/db/metod8dev#content:5904:hdoc

Как итог, статья неплохая и конкурсы интересные, но давайте вы связку MS тоже настроите правильно и дадите серверу памяти гигабайт 16, а потом перемеряете.
А так получается рассказ что вот толкаю я порш по шоссе, а меня чувак на велике обгоняет. Значит велик быстрее порша. И педальки в порше не крутятся.
(порш мне должен за рекламу)
zolkin_i; YPermitin; +2 Ответить
99. пользователь 22.02.19 07:30
(60) прочитал все комсентарии, саму публикацию.

Согласен. Тест выглядит однобоко, как-будто автор и хотел эти результаты получить. СУБД эти разные и сравнивать их так "немного" некорректно.

Про порш метафора просто огонь!
zolkin_i; +1 Ответить
100. genayo 22.02.19 08:14 Сейчас в теме
(99) Я бы не назвал это тестом - просто человек делится своим опытном, что само по себе тоже неплохо.
YPermitin; +1 Ответить
101. пользователь 22.02.19 08:18
(100) я никого не осуждаю. Узнать чужой опыт - это отлично!

Просто ведь люди могут неадекватно воспринимать посыл публикации, подумают что PG таки "уделывает" SQLServer, начнут использовать. Тут то веселье и начнется. Потом будет еще больше холиваров.

P.S. PostgreSQL использую, не враг я ему. Но и SQLServer использую тоже. Евангелистом Microsoft не являюсь! :)
103. genayo 22.02.19 08:29 Сейчас в теме
(101) Ну если таким людям достаточно статей на инфостарте для принятия решения - сами виноваты.
A_Max; YPermitin; +2 Ответить
111. пользователь 22.02.19 09:16
96. ShootNICK 13 21.02.19 23:54 Сейчас в теме
как-то все это подозрительно сладко. не понятно почему MS тогда таких денег стоит, если без него все отлично. инсайдеры, ау !
112. пользователь 22.02.19 09:20
(0) Сейчас все больше появляется публикаций по сравнению PostgreSQL и SQLServer, делают разные параметры железа, разную нагрузку и т.д. Но это же все общее сравнение, а дьявол как обычно в деталях.

Например, можно сделать сравнение планов выполнения запросов для популярных кейсов между этими СУБД:
1) Как выполняется запрос получения среза последний на больших таблицах?
2) Как СУБД реагирует если соединять физическую таблицу со вложенным запросом (например, справочник номенклатуры и вирт. таблицу ЦеныНоменклатуры.СрезПоследних без проброса фильтров в эту таблицу).
3) Как ведут себя индексы на временных таблицах
4) Как PG по сравнению SQLServer выбирает индексы при сложных соединениях в запросе.

Вот это было бы интересно.

Часто слышу, что PostgreSQL лучше, потому что он ест меньше памяти, меньше требователен к ресурсом. Действительно, SQLServer сожрет всю память, что у вас есть, но не потому что у MS разработчики "криворукие", просто они выбрали такой путь развития продукта в плане оптимизации. То есть нужно больше памяти, чтобы оптимизировать операции. Память можно и ограничить и сделать тонкую настройку.

Еще я бы сравнил некоторые служебные операции обслуживания, в том числе по индексам и статистикам, сегментирование и подводные грабли.

Хватит сравнивать попугаев, где же сравнение деталей?

Нужно больше информации!

P.S. Автор, это не тебе в упрек, просто не нашел больше места куда это написать.
Тебе + за публикацию, ты все классно сделал. Пиши есчо!
user1279931; Dach; +2 Ответить
117. genayo 22.02.19 09:36 Сейчас в теме
(112) Сравнение деталей заинтересует только узких специалистов, и "хайпа" не получится.
113. capitan 2470 22.02.19 09:21 Сейчас в теме
Я так понимаю DitriX и valentinko одна команда, может еще пару человек оттуда, особенно те кто написал - восхитительно и бесподобно )
Поэтому давайте я нижним комментарием попробую подвести некоторые общие итоги вопросов.

Проделана большая работа и за это большое спасибо, но плюс я бы поставил после:

1. Четкой начальной постановки задачи - если это просто абстрактный сервер это одно условие, если это сервер магазина на 5 пользователей другой
Отличия:
а) Не жирно ли будет серверу магазина на 64-х лицензии 1С жить ? Это в рублях 100000 против 15000 за сервер мини
б) У сервера магазина нет 2-3 часов на подъем на мой взгляд. За 2 часа продавцов просто разорвут, а продавцы разорвут потом вас.

2. Очень мало памяти. На одном всем известном интернет магазине можно за 6 т.р. взять 32 Гб. И сервер просто летать будет, потому что все уберет в кеш.
3. Настройки надо сделать по ИТС. Они есть и для Postgres и для виндовых серверов вообще есть чек-лист
По предыдущей статье установке Дебиан не хотел возмущаться - но там тоже надо почитать ИТС и посмотреть каких пакетов не хватает.
4. Тесты делать не только однопользовательские иначе это однобоко. И тогда уже посмотреть кто кого Postgres vs Microsoft

Сейчас все смешалось, люди, кони...
Невинно пострадал комментатор. Понятно что встали на защиту Postgres, но при таком подходе это медвежья услуга.
Есть места где он хорош, где очень хорош, но повторять историю с хрущевской кукурузой тоже не надо
YPermitin; +1 Ответить
114. пользователь 22.02.19 09:26
(113)
астройки надо сделать по ИТС. Они есть и для Postgres и для виндовых серверов вообще есть чек-лист
По предыдущей статье установ


Закрыли мой последний комментарий своим :)
Я надеялся привлечь внимание к более тонкому сравнению СУБД.
115. alex_sh2008 4 22.02.19 09:35 Сейчас в теме
(114)
Я надеялся привлечь внимание к более тонкому сравнению СУБД.

Зачем делать более тонкое сравнение, у этих серверов разные сферы использования, то что его 1С прикручивает к своей платформе это их собственное дело, работает она с ним и хорошо. Но делать выводы по двум разным серверам в искусственных средах, безполезная трата времени и только вводит в заблуждение многих.
YPermitin; +1 Ответить
119. пользователь 22.02.19 09:37
(115) тонкое сравнение для технических специалистов, оно и откроет всю правду что и как работает.

А не "вот это все".
120. genayo 22.02.19 09:40 Сейчас в теме
(119) Нет, "откроет правду" только параллельное применение в продуктивной среде. И, думаю, многие крупные компании уже так и поступают.
YPermitin; +1 Ответить
122. пользователь 22.02.19 09:43
(120) параллельное да, но обычно не для одинаковых задач. Так объективного сравненитя не получится никогда.

Только хайп, только хардкор. Стороны будут плеваться друг в друга, а всего-навсего надо было сравнить детали.

Где логика в этом мире :)
124. genayo 22.02.19 09:48 Сейчас в теме
(122) Сравнения, чтобы его "выкатить" на широкую публику да, не получится. Но для принятия решения о выборе СУБД для старта новых проектов внутри компании этого вполне достаточно.
YPermitin; +1 Ответить
121. alex_sh2008 4 22.02.19 09:43 Сейчас в теме
(119)Технические специалисты все это узнают из документации где черным по белому пишут про особенности серверов их недостатки и преимущества для разных архитектурных решений.
YPermitin; +1 Ответить
123. пользователь 22.02.19 09:46
(121) Тогда получается, что все эти статьи только для хайпа и рекламы?

Я все же надеюсь, что люди просто деляться опытом.
125. genayo 22.02.19 09:50 Сейчас в теме
(123) Нет, не только, конечно. Целей может быть сразу несколько.
YPermitin; +1 Ответить
127. alex_sh2008 4 22.02.19 09:58 Сейчас в теме
(123)В 90% это реклама. О каком опыте может быть речь, когда все это синтетическое. Если 1 сервер рассчитан на большое количество соединений с малыми выборками на запись и чтение что характерно для веб проектов, а второй на обработку больших объемов данных (базы по 1Тб и более), большим количеством и объем транзакций на запись и чтение.
YPermitin; +1 Ответить
129. пользователь 22.02.19 09:59
131. genayo 22.02.19 10:13 Сейчас в теме
(127) Ну ведь опыт же был проведён? Не из головы же они это выдумали? А оценка и интерпретация этого опыта лежит уже на совести читателей.
132. alex_sh2008 4 22.02.19 10:27 Сейчас в теме
(131)Интересный опыт, абсолютно разные среды исполнения, которые обладают разными характеристиками, начиная от работы ядра, заканчивая файловой системой.
133. genayo 22.02.19 10:30 Сейчас в теме
(132) Ну вот вы и оценили, и сделали выводы, и поняли, что для вас этот опыт нерелевантен. Другие усомнятся, и заходят повторить данный опыт в условиях, которые релевантны для них. Вреда вроде от этого нет никакого.
134. alex_sh2008 4 22.02.19 10:40 Сейчас в теме
(133)Это для меня не опыт, а еще 1 вид рекламы и выделение одного из продуктов в ущерб другому. Выбор сервера базы данных зависит от сотни факторов, и там не только его производительность, но и вся ИТ архитектура предприятия.
118. capitan 2470 22.02.19 09:37 Сейчас в теме
(114)Вы человек высокого полета и высоконагруженных систем )
В данном случае я думаю чек листа от ИТС должно хватить
YPermitin; +1 Ответить
116. capitan 2470 22.02.19 09:36 Сейчас в теме
И отдельным комментарием напишу про В-Вежливость.
Она у многих в интернетах начисто отсутствует.
Вот вы пишете мол ничего страшного сервера устают, мы их починяем, а вы потерпите.
А комментаторов вообще шлете буй покачать, без объяснения причин..
Я сам был свидетелем истории когда вот такой лихой человек рванулся объяснить покупателю что ничего страшного 20 мин (!!!) всего надо было подождать.
Покупатель был непростой даже на вид и служба безопасности наша его поила чайком-кофейком и развлекала как могла.
И вот компьютерный гуру пошел пошел объяснять где баг и где фича.
Самое было забавное, что действительно через 2 мин браток выскочил из переговорной с большими глазами и криком - Я вашего парня не трогал, только поздороваться хотел!
А наш герой просто отключился. Потом его нашатырчиком восстановили, он сказал - Мне показалось он меня убьет.
Так что будьте аккуратнее - грань между виртуальным и реальным мирами очень призрачная.
YPermitin; +1 Ответить
126. пользователь 22.02.19 09:57
(116) надо просто всем встретиться на Infostart Event и обсудить устно :)
128. capitan 2470 22.02.19 09:59 Сейчас в теме
(126)Было бы интересно)
Не получилось по времени (
135. stvorl 1041 22.02.19 10:52 Сейчас в теме
Вброшу тут немножко на вентилятор. :-)
Не совсем понятно, почему такая низкая производительность на TPC-A: 20 попугаев и меньше, почти на всех вариантах развертывания в серверном режиме.

У меня есть под наблюдением одни примечательные деятели - они используют сервер, который устарел еще 8 лет назад, когда я с ними познакомился -
- Плата S3420GP,
- Процессор Xeon X3430 2.4 ГГц,
- Память 1333 МГц ECC, собранная из разносортных модулей, приобретенных у неустановленных физлиц в переходе,
- (единственная новая деталь) Intel SSD S3110 256Gb, который хоть и серверный, но все таки 960EVO в подметки не годится по скорости, и к тому же сидит в SATA2 и выше 250Mbps не работает практически.

На всем этом поднят Xen, под которым сидит виртуалка с Win2008R2 8Гб RAM, с 32-битным сервером приложений 1с, и отдельная виртуалка с PostgreSQL на Debian 9 - 4Гб RAM. Общаются они через виртуальную сеть. И еще проброшено 4 HASP-ключа и два виртуальных tablet по USB, которые постоянно подъедают процессор.

И даже на этих костях мамонта TPC-A Гилева дает 17 попугаев. Чуть раньше, до покупки SSD, на пакете из 2 HDD под mdadm raid1, оно показывало 13 попугаев. А это даже никто не знал в тот момент, что на CPU заклинило кулер, и он вообще около года не охлаждался. :-)

На чем-либо сравнимом по новизне, частоте и скорости IO с вашим железом, примерно в вышеозначенном логическом раскладе (Xen, виртуальный сервер 1С под Windows и виртуальный СБД PSQL под Debian) меньше 40 у меня не получалось.
Вот специально запустил на металле (без виртуализации) с Windows2016 + MSSQL2008, на вполне современном конфиге, сравнимом с вашим (SSD медленней, памяти больше, частоты те же), TPC-A дает 45.
Что-то тут не так.
137. mr_best_23rus 30 22.02.19 12:16 Сейчас в теме
Использую постгри давно. Использую на серверах с 1000 сеансов. Использую на касса с 1 пользователем. На кассах с 5-ю пользователями через мини сервер. И быкапы делаются, и развертывается быстро, и переносится с машины на машину быстро, и восстановление быкапов быстрое. Ну вот чисто мою личное субъективное ощущение после 8 лет использования. Я очень доволен, и мс скул мне не нужен))))
artevgen; capitan; YPermitin; +3 Ответить
138. пользователь 22.02.19 12:55
(137) Могу написать то же самое, заменив PG на SQLServer. Поверите? :)
139. genayo 22.02.19 13:04 Сейчас в теме
(137) Ну, мы вас поздравляем.
140. capitan 2470 22.02.19 13:34 Сейчас в теме
(137)
(138)
У нас уже собираются два лагеря - как у любителей надкушенных яблок и зеленых роботов )
YPermitin; +1 Ответить
141. alex_sh2008 4 22.02.19 13:52 Сейчас в теме
(140)Нужен третий Oracle;)
acanta; capitan; YPermitin; +3 Ответить
142. пользователь 22.02.19 14:14
(141) и 4 - только файловые базы, только хардкор!
acanta; capitan; +2 Ответить
143. capitan 2470 22.02.19 14:24 Сейчас в теме
(141)
(142)
Сделали мой день )
По логике разговора я конечно должен был за DB2 зарубиться)
Прикрепленные файлы:
YPermitin; +1 Ответить
144. mr_best_23rus 30 22.02.19 15:36 Сейчас в теме
Ой! Спасибо за поздравления !
А если серьезно, то этот батл спор, PostgreSQL vs MS SQL пустая трата времени )

Это дело вкуса !

Как написал уважаемый в (137) - "то же самое"
145. capitan 2470 22.02.19 15:51 Сейчас в теме
(144)Ну с точки зрения финансового директора я бы так не сказал )
146. alex_sh2008 4 22.02.19 16:42 Сейчас в теме
(145)Все зависит от типа вашей экономики, экономика ради экономии или экономика ради прибыли. Так что может PG встанет дороже чем MS
147. capitan 2470 22.02.19 18:15 Сейчас в теме
(146)Это не банка тушенки. Тут все индивидуально просчитывается.
И банки тушенки тоже бывают разные
158. sahawood 27.02.19 14:18 Сейчас в теме
Вы наверно в какой то другой стране работаете .Какой люнекс ? У меня 300 ип на потдержке ( магазинов больше у кого 5 у кого 10 есть и больше) Большинство компов это древний хлам амд и интел которые они из дома принесли, купили на авито, Хорошо если 2 гига оперативки есть ддр2. Задача номер один чтобы шли продажи все остальное вторично Комп обновляется в крайнем случае ( когда он издох) и то покупается на авито такой же б/у Как установить винду с диска я объясню с закрытыми глазами , на пальцах , как зайти в биос чтобы установить приоритет на загрузочный носитель тоже ( чаще всего это делает местный школьник за час полтора по урокам на ютубе ) с люнексом такой фортель не прокатит от слова никак.А если я не смогу найти решение в кратчайший срок используя" подножные " ресурсы клиент не будет со мной работать .Это жизнь а не идеальный комп с неограниченным бюджетом и предприниматель готовый жертвовать деньги в суммах 100 тысяч и больше.База 1с всегда на диске d так чта винда для меня не критична
160. starik-2005 3036 03.06.19 10:31 Сейчас в теме
(158)
Большинство компов это древний хлам амд и интел которые они из дома принесли, купили на авито, Хорошо если 2 гига оперативки есть ддр2. Задача номер один чтобы шли продажи все остальное вторично
А на кой хрен им 1С? Поставить какой-нить фронтол, который на калькуляторе может работать, и не мучиться с обновлениями платформы и прочей мутью.
161. sahawood 03.06.19 19:40 Сейчас в теме
(160)с1с проще работать под нее много чего дописано
159. 888tbkru 07.04.19 17:19 Сейчас в теме
Явно низкие результаты для такого железа. Сначала нужно получить на этом железе по гилеву хотяб 35 и только после сравнивать. Иначе получается тест на - что НЕ РАБОТАЕТ ХУЖЕ. Но в целом проделанная работа чрезвычайно полезна и автору огромный респект
163. Nigelist 07.06.19 11:18 Сейчас в теме
(0) поделитесь ссылкой на репозиторий PostgrePro 11 для 1С? Они у себя на сайте ссылки куда то запрятали.
165. Созинов 07.06.19 11:38 Сейчас в теме
167. Nigelist 07.06.19 14:29 Сейчас в теме
(165) устанавливал версию 1С-edition. Там в названии пакета так и указывалось 1С. Систему переустанавливал на личном компьютере, не догадался сделать резервную копию файлов с репозиториями.

P.S. Оказывается в стандартной версии есть поддержка 1С.
166. valentinko 156 07.06.19 12:04 Сейчас в теме
168. Nigelist 07.06.19 14:29 Сейчас в теме
170. hobi 616 21.01.20 17:53 Сейчас в теме
Мои пять копеек в тестировании СУБД:
С нуля загружен один и тот-же .dt объемом 1.5 Гигабайта в две конфигурации (платформа 1С:Предприятие 8.3.16)

1.Процессор i5-8400T (6 ядер, 3.3 ГГц), 32 Гб RAM DDR-4, база на отдельном SATA SSD (заполненность ~20%, TRIM был сделан)
Windows x64 Home + MS SQL 2014 + Сервер 1С x64

2. Процессор i5-4460 (4 ядра 3.4. ГГц), 32 Гб RAM DDR-3, база на отдельном HDD WD BLUE 7200 об/мин
FreeNas, под гипервизором Bhyve создана виртуальная машина, ей отдано 16 ГБ RAM и в ней
установлен Linux Mint x64 XFCE, PostgreSQL x64 и Сервер 1С x32

В обоих конфигурациях был запущен товарный отчет и получены идентичные результаты по времени исполнения: 25 секунд.
После получения результатов сильно зауважал PostgreSQL (и FreeBSD, Linux, Bhyve тоже).
172. zolkin_i 23.01.20 13:38 Сейчас в теме
Автору спасибо!

Хотя результат и не совсем объективен - но по крайней мере можно сделать вывод что Postgre как минимум не сильно уступает MS-SQL.

Ну и кому актуально - всегда может развернуть свою базу на одинаковых хостах/виртуалках и перемерять для себя )
174. w.r. 644 17.11.20 20:38 Сейчас в теме
Народ спорит про то, что дешевле виндовс или Линукс админ. Но. Для настройки Линукс под конкретную машину, как и Постгрес - нужно достаточно много знаний. Настроить правильно работу с памятью. Дисковой системой. Параметры нагрузки на процессор. Виндовс и МС Скуль сервер делают это в автоматическом режиме. В режиме по дефолту ты получаешь рабочую конфигурацию Виндовс + МС Скуль для работы в 1С. И не рабочую Линукс + Постгрес. Нужен не просто Линукс админ, умеющий запускать команды в терминале, а очень продвинутый Линукс админ
Оставьте свое сообщение