Какой SQL Server лучше для сервера 1С




Нагрузочное тестирование TPC 1C Гилева, различных версий MSSQL и Windows server.

Предисловие.

В интернете задают вопросы, как настроить SQL сервер для 1С, какой из серверов баз данных лучше, производительней для 1С и тд. Простого ответа на вопрос нет, как и тестов, которые бы могли как-то показать различия. Не спорю, на производительность "много чего" влияет, и в эти тонкости мы не лезем в тестах. Наша задача на одном и том же аппаратном обеспечении, произвести тестирование одного и того же теста при абсолютно одинаковых параметрах, различаются только версии ОС и MSSQL. Базовые настройки MSSQL производились в точности по рекомендациям разработчиков 1С.

В тестах принимали участия (все обновления на момент тестирования):

MSSQL 2008 R2 SP3 Windows Server 2008 R2
MSSQL 2012 SP4 Windows Server 2012 R2
MSSQL 2014 SP2 Windows Server 2024
MSSQL 2024 SP2 PostgreSQL 9.6.10

Были исключены: Windows Server 2003 R2 и MSSQL 2005.

Железо

Тестирование производилось в виртуальной среде VMware на следующей конфигурации:

  • CPU:  Intel Core i7-3520M
  • RAM: 16Gb DDR3L 1600 MHz
  • SSD: Intel 540 240 Gb

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

На каждую из хостовых ОС, устанавливались разные версии MSSQL, из таблицы выше.

В каждом режиме совместимости, производилось 2 теста без перезагрузки, затем менялся режим совместимости, перезагружался MSSQL и производилось новое тестирование.

Дополнительно были произведены тесты c использованием протокола Shared memory, а также один тест PostgreSQL 9.6.10 (postgrespro.ru) на CentOS 7. (для сравнения)

Результаты и субъективное мнение

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

Поделюсь лишь своим субьективным мнением. Выводы каждый сделает сам.

  • Лучше всех, во всех тестах себя показал MSSQL 2008 R2 и MSSQL 2012.
  • Хуже всех, во всех тестах  себя показал MSSQL 2014! Часто возникали ошибки при тестировании.
  • Странное поведение MSSQL 2024 с протоколом Shared Memory — прироста практически нет, тест проводили несколько раз, отключали все проколы, проверяли..
  • Очень удивила производительность PostgreSQL — ни чем не уступает MSSQL.

Конечно, многие скажут, что производительность PostgreSQL можно улучшить, оптимизировать, и тд, как и в MSSQL, но это уже совсем другие задачи, мы просто прогнали тесты в дефолтном режиме (рекомендованные или обязательные настройки были внесены), без фанатизма и глубокой оптимизации, поскольку большинство начинает оптимизировать работу связки при возникновении проблем с производительностью последних, а не заранее.

Замечания, относительно используемого железа, использовали то, что было свободно, поскольку каждый тест занимает 15-20 минут, суммарно более 120 тестов и 40 часов (1 неделя). Кроме того, оценивалось не "железо", а разница, на одном и том же "железе" или "аппаратном обеспечении", кому как нравиться.

Послесловие

Если данные тесты, окажутся кому-то интересны, и пост наберет немного оценок, можно продолжить тестирование различных сборок PostgreSQL, скажем на FreeBSD/Debian/CentOS/.., ставьте оценки и пишите свои замечания.

Полезные ссылки:

 

99 Comments

  1. pophmail

    Недавно занимался установкой и так же выбрал MSSQL 2012 причём в hyper-v под win2008r2. Основная ОС win2016. Результат теста около 30 ‘попугаев’ и 50 пользователей (предполагается одновременная работа до 35).

    Железо:

    — CPU — один Хеоn E5-2620 V4 2.1GHz

    — RAM — выделено для 2008r2 48Gb

    — Raid1 из двух SSD, контроллер Adaptec8405e.

    Reply
  2. saa@kuzov.org

    Либо я не разобрался в вашей таблице, либо где-то путаница.

    Меня интересует MS SQL 2016 SP2 на Windows 2016 Server.

    На первом листе Общая оценка 13,535

    На листе 2016, режим совместимости 130 — средняя оценка 12,075

    Собственно, в чем разница между этими двумя оценками?

    Reply
  3. capitan

    4 Гб памяти на сервере ?

    Reply
  4. aximo

    2008r2 вполне годен по опыту эксплуатации

    Reply
  5. dmurk

    TPC-A снят с промышленной эксплуатации в 1996-м году

    Reply
  6. demon_sl

    (1)

    Хеоn E5-2620 V4 2.1GHz

    — RAM — выделено для 2008r2 48Gb

    — Raid1 из двух SSD, контроллер Adaptec8

    У нас то же похожая конфигурация, на E5-2630v3/64Gb 7805Q 4HDD RAID10 + cache

    Но вот что замечено, SSD имеет смысл только если не хватает ОЗУ, так как MSSQL все базы в пямяти пытается держать, а когда ОЗУ не хватает — сбрасывает на диск, а вот 1C сервер — пишет журнал, много и упорно, и если он не нужен, лучше его отключить.

    Reply
  7. demon_sl

    (2)

    ашей таблице, либо где-то путаница.

    Меня интересует MS SQL 2016 SP2 на Windows 2016 Server.

    На первом листе Общая оценка 13,535

    На листе 2016, режим совместимости 130 — средняя оценка 12,075

    Собственно, в чем разница между этими двумя

    На первом листе, чуть ниже написано: Тесты по протоколу Shared Memory (общая память) и без режимов совместимости.

    Reply
  8. demon_sl

    (3)

    На прошлой работе, стояли промышленные сервера IBM 2012 года выпуска с 2Gb ОЗУ и с MSSQL 2005 на борту для обслуживания Simatic Step7. Что до тестовой конфигурации — загрузка ОЗУ, во время тестов, не превышала половины. См. коментарий выше, продакшен на другом железе!

    Reply
  9. demon_sl

    ПС: нет возможности выложить файл бесплатно, поэтому можно смотреть скриншоты, там все то же самое. Или пишите вопросы.

    Reply
  10. saa@kuzov.org

    (7) Что значит без режимов совместимости? Для 2016 версии режим совместимости 130 и есть «без режима совместимости».

    Покажите как вы в 2016 выставите «без режимов совместимости», я бы посмотрел.

    Если на первом листе Shared Memory, то какой протокол на листе 2016??

    Reply
  11. capitan

    (8)Вы скорее меряете какой сервер сможет работать при таком количестве памяти, чем реальную производительность.

    На таком железе

    Reply
  12. capitan

    ИМХО нет смысла гнаться за новыми редакциями ни серверов, ни 1С

    Что касается вообще теста SQL серверов — тестировать их TPC-A это как автомобили тестировать скидыванием с горки, все одинаково доедут.

    Если только не на ручнике )

    Сила SQL сервера — в его способности обрабатывать блокировки

    Reply
  13. h00k

    (12)

    ИМХО нет смысла гнаться за новыми редакциями ни серверов, ни 1С

    2012 — в принципе норм, начиная с SP2

    2014 — можно использовать только с 1118 и 4199

    2016 — самая гибкая возможность настройки на текущий момент, одна только возможность задать DoP и MaxDoP для конкретной базы чего стоит.

    Reply
  14. alex_sh2008

    (12)

    ИМХО нет смысла гнаться за новыми редакциями ни серверов, ни 1С

    Если вы меняете оборудование на более новое, то старые версии уже будут хуже поддерживать его. SQL 2008 плохо работает на Windows 2016, А Windows 2008 плохо поддерживает новое железо. Все взаимосвязано.

    Reply
  15. fishca

    Лучший тот, который правильно настроен.

    Reply
  16. fishca

    Судя по баллам (11-12) лучше такие сервера не использовать для 1С.

    Reply
  17. demon_sl

    (12)

    только не на ручнике )

    Сила SQL сервера — в его способности

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

    Reply
  18. demon_sl

    (10)

    Покажите как вы в 2016 выставите «без режимов совместимости», я бы посмотрел.

    Если на первом листе Shared Memory, то какой протокол на листе 2016??

    Да, все правильно поняли, для 2016 — 130 и т.д., Shared Memory — только первый лист, остальные по TCP/IP

    Reply
  19. demon_sl

    (13)

    1118 и 4199

    MSSQL 2014 именно с этими флагами и тестировался, 1118 для всех кроме MSSQL 2008 и 2016.

    Тест, почему-то в MSSQL 2016 с использованием Shared Memory не сильно прибавил баллов, тестировал несколько раз, но так и не понял почему (

    Reply
  20. capitan

    (14)только в случае неограниченного бюджета. Тогда бы я вообще прикупил необитаемый остров и там все налаживал )

    (15)не все можно улучшить правильными настройками, но все можно ухудшить неправильными. Я думаю на 4 ГБ вы сервер в продакт не заведете, поэтому и тестирование получается сферического коня в вакууме

    (16)см. выше это просто некие магические цифры которые можно директорам показать не более того.

    Я знаю сервера с баллом 10 нормально тянущие полсотни юзеров и с баллом 50 на которых двое не уживаются.

    Да на 4Гб вообще бухгалтерия даже устанет запускаться просто

    Reply
  21. capitan

    (17)

    другой тест

    есть — не буду пиарить себя) тем более он не мой, но сервера он вам померяет корректно

    а из 1С — здесь на инфостарте отличный тест от Fragster — многопоточный, он похож на правду

    а если эталон — это стандартный нагрузочный тест из КИП

    (17)

    на 2012 и выше

    это уже не гонка, на дворе 2019 😉

    Но и 2019 например ставить нет смысла

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

    Reply
  22. Darklight

    (16)Да там тестировали на рабочей станции — лажа и не тесты…

    Reply
  23. demon_sl

    (21)

    не гонка, на дворе 2019 😉

    Но и 2019 например ставить н

    Спасибо за ценный комент, в следующий раз учту.

    Reply
  24. demon_sl

    (20)

    выше это просто некие магические цифры которые можно директорам показать не более того

    полностью с Вами согласен, но тесты не на сервере делались, а на том, что было свободно, в продакшене у меня совсем другая конфигурация, к тому же для одной такой бызы для тестирования озу предостаточно, а цифры это результаты теста Гилева, другого у меня не было на тот момент. Целью измерения была разница а не лучшая конфигурация или сервер!

    Reply
  25. demon_sl

    (21)

    С на нем живет. железо то не сильно меняется

    с *nix так сложилось, что все новое не всегда стабильно, но есть продукты которые требуют sql не ниже такой версии и тд. сам начинал с freebsd5

    Reply
  26. triviumfan

    (5) Т.е. этот тест ни о чём? Вячеслав с Вами категорически не согласится)

    Reply
  27. triviumfan

    (51) Это ни о чем не говорит. Он используется как элементарный нагрузочный тест, чего простым смертным хватает для нахождения узких мест.

    Дураку понятно, что при нагрузочном тестировании для 1к+ рабочих мест пишут свои тесты под конкретную систему и бизнес.

    Reply
  28. dmurk

    (52) Этот тест показал никакие результаты на новом сервере на базе AMD EPYC и охренительные результаты на стареньком FUJITSU. Реальное комплексное тестирование не коррелирует с TPC-A от Гилева от слова совсем ни в однопользовательском, ни в многопользовательском режиме.

    Reply
  29. starik-2005

    (54)

    Реальное комплексное тестирование не коррелирует с TPC-A от Гилева от слова совсем ни в однопользовательском, ни в многопользовательском режиме.

    Возникает вопрос: это Гилев в своем тесте накосячил, или это сам по себе тест — полное УГ? Со вторым трудно согласиться, ибо есть это:

    TPC публикует спецификации тестовых пакетов, которые регулируют вопросы, связанные с работой тестов. Эти спецификации гарантируют, что покупатели имеют объективные значения данных для сравнения производительности различных вычислительных систем. Хотя реализация спецификаций оценочных тестов оставлена на усмотрение индивидуальных спонсоров тестов, сами спонсоры, объявляя результаты TPC, должны представить TPC детальные отчеты, документирующие соответствие всем спецификациям. Эти отчеты, в частности, включают конфигурацию системы, методику калькуляции цены, диаграммы значений производительности и документацию, показывающую, что тест соответствует требованиям атомарности, согласованности, изолированности и долговечности (ACID — atomicity, consistency, isolation, and durability), которые гарантируют, что все транзакции из оценочного теста обрабатываются должным образом.

    С первым ясно мало, ибо я не Гилев и не знаю, что там у него в тесте соответствует спецификации TPC, а что от балды придумано (но я не думаю, что Гилев такой глупый, что не смог осилить создание теста, для которого существуют открытые спецификации).

    Reply
  30. demon_sl

    (54) хм, спасибо, мне то же интересно, хотелось бы больше данных, на рабочем сервере то же показатели от 50 до 10 скачут, какие были настройки и пр., в тестах у меня были абсолютно одинаковые настройки согласно официальным рекомендациям, включая где нужно флаги трассировки, 1С и свободное от других нагрузок железо, прогони все на рабочем сервере была бы погрешность 1000%.

    Имели ввиду многопоточное тестирование?

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

    Reply
  31. demon_sl

    (56) Поддерживаю.

    Reply
  32. triviumfan

    (56) Ага, а если что не понятно, то «гоу на наши курсы для администраторов http://www.gilev.ru/training/ » 🙂

    Ну, раз такая разница, то нужно задуматься и искать узкое место)

    Reply
  33. starik-2005

    (62) Да, прикололо вот это:

    е) обучение разговаривать на языке бизнеса

    Полезный навык, однако… )))

    Reply
  34. triviumfan

    (63) Может оно особенно приходится, чтобы директору объяснить, куда ты ездил и зачем)

    Reply
  35. starik-2005

    (64) у бизнеса есть такой показатель, как ROI — гугл в помощь )))

    Reply
  36. triviumfan

    (54) Дмитрий, если без шуток, то Вы серьёзно считаете, что этот тест полная чушь?

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

    Reply
  37. demon_sl

    (68) yello Гилев — заслуженный авторитет, во время тестов, фетчились данные, примерно по 1 результату в минуту и больше, данные собираются и анализируются, на сайте Гилева, дано понятие ценности теста, и какая субд лучше, несмотря на справедливые замечания Андрей Капитонова

    (capitan) данный тест свою задачу решает, и показывает разницу в зависимости от железа и конфигурации, как и многопоточные тесты — свою. Добавил в статью ссылки по теме (тесты железа и конфигураций).

    Если этот тест полная чушь, зачем тогда так активно им пользуются?..

    Reply
  38. dmurk

    (68) Уважаемый господин, вы с нарушением логики приписываете мне суждения которых я не высказывал. Во-первых для того что бы излагать свою позицию, необходимо приводить аргументы. Которые у меня есть. Почитайте причины, по которым tpc.org считает этот тест устаревшим. Во-вторых вы, как профессиональный тролль, считаете что достаточно сделать пустопорожнее заявление, в котором я, якобы, не прав, а мне для того чтобы его опровергнуть, необходимо сделать реверсинжиниринг теста TPC-A и потратить более 100 часов чтобы доказать свою правоту. Вы готовы заплатить хотя бы 40 $m чтобы ознакомиться с доказательствами?

    Reply
  39. triviumfan

    (71) Не надо лицемерить. Я никого ни в чем не обвинял, и, если моя фраза каким-то касанием задело ваше ЧСВ — извиняюсь тысячекратно!


    Этот тест показал никакие результаты на новом сервере на базе AMD EPYC и охренительные результаты на стареньком FUJITSU. Реальное комплексное тестирование не коррелирует с TPC-A от Гилева от слова совсем ни в однопользовательском, ни в многопользовательском режиме.

    И какие же выводы можно из этого сделать?!

    Повторю вопрос:

    Дмитрий, если без шуток, то Вы серьёзно считаете, что этот тест полная чушь?
    Reply
  40. dmurk

    (72) У меня ЧСВ отсутствует. Цитирую, специально для Вас. «Реальное комплексное тестирование не коррелирует с TPC-A от Гилева».

    Мои результаты:

    однопоточное тестирование в TPC-A имеет показатели 22 (Fujitsu) — 35 (EPYC),

    многопоточное тестирование: 95 пользователей (Fujitsu) — 143 пользователя (EPYC),

    что даёт разницу 1,5 раза в однопотоке и 1,5 раза в многопоточной нагрузке.

    Реальные данные тестирования:

    9х в однопотоке

    2х в многопоточной нагрузке

    Reply
  41. dmurk

    (72)

    комплексное тестирование не коррелирует с TPC-A от Гилева

    Про чушь я ничего не говорил. Я предлагаю вам ещё раз оценить заявление от организации TPC.ORG, которое гласит: «тест устарел и не отражает современной типовой серверной нагрузки». Это заявление было сделано в 1996-м году!!!

    Reply
  42. triviumfan

    (73)

    Реальные данные тестирования:

    9х в однопотоке

    А что подразумевается под «реальным тестированием»?

    «9х», — в 9 раз?

    Reply
  43. dmurk

    (75) Смотрите доклад

    Reply
  44. triviumfan

    (76) С удовольствием, только знать бы какой! Дмитрий, я смотрел и ваши доклады, и никакой я вам не троль. Вы просто не так поняли/выразились.

    ЗЫ: И вообще, к слову, этот тест на нашем рабочем сервере (x5650 64gb raid10 hdd) 11 баллов выдаёт и никто не чешется.

    Reply
  45. dmurk

    (77) Ну тут могу подсказать. На этой платформе проблема с аппаратной виртуализацией, которая усугубляется host-based raid контроллерами от Intel. Можно значительно поднять производительность, если пересобрать RAID на базе Windows вместо host-raid контроллера, и ещё процентов на 15 улучшить, за счет размещения SQL на хосте вместо виртуалки

    Reply
  46. h00k

    (77)

    этот тест на нашем рабочем сервере (x5650 64gb raid10 hdd) 11 баллов выдаёт и никто не чешется

    По моим наблюдениям, которые совпадают с оценочной шкалой в тесте Вячеслава, если тест выдаёт больше 20 «попугаев», то пользователи оценивают скорость работы как «приемлимую», выше 30 как замечательную, выше 40 — разницы между 40 и 60 уже не замечают.

    П.С.: 1С это oltp-система, поэтому для неё очень важна не только общая многопоточная производительность, но и скорость выполнения операций в один поток. А если ещё и настройки MaxDoP на MS SQL выставленны в точности с «инструкцией» от 1С, то скорость обработки операций в один поток становится одним из важнейших параметров сервера.

    Reply
  47. triviumfan

    (80)

    Можно значительно поднять производительность, если пересобрать RAID на базе Windows вместо host-raid контроллера

    Не смыслю в этой теме, но передал админам.

    а счет размещения SQL на хосте вместо виртуалки

    Именно! Забыл указать, что частично я нашёл причину, т.к. сейчас 1с в виртуалке, а скуль на хосте, shared memory on.

    Так вот если запустить тест с 1с и скулём на хосте, то получим 18 баллов! Но это все равно подозрительно мало, «улучшенный» Nehalem не так уж слабее текущих поколений.

    ЗЫ: все работает — никто не чешется.

    (81)

    MaxDoP

    MaxDoP = 1

    И вообще это шляпа.

    Reply
  48. triviumfan

    (80) Ответ админа:

    про раид — любой железный или именно интел?

    у нас на 100 стоит LSI

    Megaraid

    lsi megaraid 9271-8i

    Reply
  49. dmurk

    (86) «улучшенный» Nehalem в отличие от более поздних поколений процессоров Intel не имеет аппаратного ускорения при построении индексов таблиц. из-за чего проседают все конструкции объединения и индексации временных таблиц в запросах

    Reply
  50. dmurk

    (86)

    «улучшенный» Nehalem

    Что касается MaxDop, то повышение этого значения полноценно работает только SQL Server с официальными лицензиями. Если админы крутят бесплатную редакцию то MaxDop работает только применительно к tempdb, и только в том случае, если количество файлов tempdb = значению MaxDOP

    Reply
  51. dmurk

    (87) LSI MegaRaid при снижении параметров батарейки питания перестает использовать writeback кэширование, что сбрасывает производительность контроллера на десятку. Можно через утилиту администрирования включить принудительно Always Write Back, но это стремно в случае потери электропитания безвозвратно развалится весь RAID. Мы включали принудительно, но только потому что сервак стоял в датацентре с тройным резервированием питания. Лучше купить батарейку

    Reply
  52. dmurk

    (87) Ещё один момент. Если у вас используется схема Intel + LSI, проверь чтобы каталог кластера 1С ProgramFiles1Cv8srvinfo, и каталог пользователя кластера 1С — UsersUSR1CV8 находились на производительном диске, это важно, влияет на: 1) Запрос.Выполнить.Выбрать() 2) ПоместитьВоВременноеХранилище

    Reply
  53. triviumfan

    (90)

    не имеет аппаратного ускорения при построении индексов таблиц

    Подскажите, о чём именно речь? Вижу, что в сравнении с sandy/ivy/… разница только наличием AVX, увеличенным смарткешем и частоты шины. По тестам равносильны.

    «Индексировать по» в основной конфе (УТ11) встречается 1683 раза. Заставляет задуматься (или переписать проблемный запрос, что я обычно и делаю :D).

    (93) SSD нет по непонятным причинам ¯ _ (ツ) _ / ¯. (Вероятно, причина одна — работает и ладно).

    (92)

    LSI MegaRaid при снижении параметров батарейки питания перестает использовать writeback кэширование, что сбрасывает производительность контроллера на десятку

    в смысле на 10%?

    Reply
  54. dmurk

    (94)

    1) Nehalem — это процессор на старой архитектуре 2009-го года. Он не поддерживает AES инструкции, которые содержат в том числе функции SHA-1 и SHA-256. Аппаратная поддержка этих функций была добавлена в процессоры для ускорения работы промышленных СУБД. Эти инструкции поддерживаются серверными процессорами AMD с 2006-го и серверными процессорами Intel с 2011-го. Из-за того, что Nehalem не является удачным выбором для серверных СУБД, рынок переполнен 20$ комплектами мать+проц на сокете 1366. Многие админы используют этот факт для левого заработка, так как можно использовать устаревшие тесты либо тесты ориентированные на игровую индустрию.

    2) Индексировать временные таблицы необходимо, потому что с индексами медленнее только на оборудовании дешевле чем 100$.

    3) SSD нет, потому что ресурс у них ограничен, а если неграмотно спланировать дисковую подсистему, то вырабатываются в ноль за полгода.

    4) В смысле на 10 в тесте Гилева.

    Reply
  55. starik-2005

    (90)

    «улучшенный» Nehalem в отличие от более поздних поколений процессоров Intel не имеет аппаратного ускорения при построении индексов таблиц

    А пруф можно? Что вообще подразумевается под «аппаратного ускорения при построении индексов таблиц»? Есть инструкции MMX, SSEXXX, AVX/AVX-512. Последних в Nehalem нет, но это, ИМХО, не сильно влияет ни на что, ибо в MS SQL 2008 точно они не юзаются, ибо они в 2008-м году только появились, а 2012-й и 2016-й скули от мелкомягких работают не быстрее, так что вряд ли что-то тут имеет какой-то эффект.

    Reply
  56. starik-2005

    (95)

    сле на 10 в тесте Гилев

    На 10 от скольки? Или это %?

    Reply
  57. triviumfan

    (95) 1. https://ark.intel.com/ru/products/47922/Intel-Xeon-Processor-X5650-12M-Cache-2-66-GHz-6-40-GT-s-Intel-QPI-

    Новые команды Intel® AES — да.

    PS: кстати, они ещё до сих пор продаются, на пример https://www.nix.ru/autocatalog/intel/CPU-Intel-Xeon-X5670-293-GHz-6core-12Mb-95W-640-GT-s-LGA1366_99716.html

    15к 🙂

    Reply
  58. starik-2005

    (98)

    Новые команды Intel® AES — да.

    Да, я уже прочитал. Не уверен, что разница при расчете хешей превысит потери на операциях i/o, но вполне допускаю это…

    Reply
  59. dmurk

    (97) Если быть точным — 9.26 попугаев в тесте TPC-A от Гилева на LSI MegaRAID с режимом кеширования Write Trough

    (98) Проверьте тестом CPU-Z, т.к. есть ещё и Nehalem, запущенные Q1’09 в которых поддержка AES = Нет

    Reply
  60. triviumfan
    Reply
  61. dmurk

    (96) Думаю, без проработанных тестов под платформу 1С нереально обсуждать детали. У меня нет под рукой зоопарка процессоров ))

    Reply
  62. starik-2005

    (103)

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

    Можно Постгрес собрать с AES и без него и протестить.

    Reply
  63. h00k

    (96)

    ибо они в 2008-м году только появились, а 2012-й и 2016-й скули от мелкомягких работают не быстрее

    2016 и 2017 точно работают быстрее. 2012 работает незначительно быстрее. 2014 без правильных ключей запуска работает медленнее, но это, в основном, «заслуга» кривого оптимизатора.

    Reply
  64. starik-2005

    (105)

    точно работают быстрее

    Не нашел никаких пруфов, но зато нашел интересный тест постгреса vs MS SQL 2016 — тест-центр и 50/100/200 юзеров в УТ и БП. Так вот MS SQL 2016 нервно курит в углу почти по всем операциям. Хотелось бы получить пруфлинк на тему того, что там быстрее из скулов (2008 vs 2012 vs 2014 vs 2016 …)

    Reply
  65. dmurk

    (102)

    Это «улучшенный» nehalem, который Westmere EP

    Ну, это не Nehalem, это Westmere. Полноценный AES у него в наличии, однако имеет проблемы со значительным снижением скорости работы виртуальной машины, гипертридинга и доступа к дисковой подсистеме вследствие обновлений безопасности Windows, выпущенных за последний год. Вряд ли получится из него что-то вымучить выше 22-х попугаев в TPC-A

    Reply
  66. triviumfan

    (107) Ну, 22 это в два раза выше, чем текущие 11.

    Вообще первая же ссылка гугла на «1с x5650» даёт примеры проектор ЦКТП http://v8.1c.ru/expert/cts/serv.html

    Я смотрю там этот ЦП нереально популярен (после разогнанного x5670). Вероятно, что статья давно устарела, но раньше он был очень даже ничего.

    вследствие обновлений безопасности Windows

    Очень жаль, что все это программное ограничение, порох в нём ещё есть даже на 2018 год.

    Reply
  67. h00k

    (106)

    Не нашел никаких пруфов

    Я, почти всегда, стараюсь писать на основании своего опыта эксплуатации. Специальных тестов не проводил, но с новым скулём и на том же окружении система стала работать быстрее процентов на 10-15. Возможно это связано с тем, что 2016 и 2017 лучше переносят виртуализацию.

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

    Reply
  68. triviumfan

    (107) Дмитрий, админ интересуется, будет ли толк, нет, увидим ли разницу (не в тесте!), если поставить два X5690 вместо X5650?

    2.66 -> 3,46, на 30% как никак увеличение)

    Reply
  69. alex_sh2008

    (81) от SQL сервера мало что зависит, вся проблема в самой 1С ее низкой производительности, вот наглядный пример делал 10 минут назад на рабочем сервере 11 летней давности 24Гб, 2хE5410 2.33GHz, 2 виртуальные машины на борту, sql и 1С на самой железке, 4 активные базы (общая емкость около 80Гб), 20 активных пользователей, тест дает 15.6.

    Reply
  70. dmurk

    (96)

    ибо они в 2008-м году только появились, а 2012-й и 2016-й скули от мелкомягких работают не быстрее

    В одной из веток обсуждения MSSQL наткнулся на пояснение инженера мелких, почему 2016 стал работать быстрее — они пересобрали ядро SQL 2016 с вызовом предвыборки участков памяти в кэш процессора, за 200-300 тактов до того, как эти данные понадобятся, что повысило эффективность на 1 ядро и снизило эффект от технологии HT

    Reply
  71. dmurk

    (104) Уже в планах

    Reply
  72. dmurk

    (106) Без полного описания как что настраивалось, смысла нет это рассматривать. У меня за счет правильных настроек MS SQL апнулся в 4 раза по скорости

    Reply
  73. dmurk

    (110) Разница возникнет, безусловно. Вычислительные способности кластера 1С очень серьезно зависят от частоты. Время проведения документов до 90% времени может занимать не СУБД, а 1С-вский код, в зависимости от редакции.

    Reply
  74. starik-2005

    (114)

    У меня за счет правильных настроек MS SQL апнулся в 4 раза по скорости

    По скорости INSERT’ов? Или по скорости какого-то конкретного запроса в отчете? Как повысить первое я не знаю, а вот MaxDoP очень даже неплохо влияет на второе.

    Reply
  75. YannikAlx

    (1) А попугаи из какого зоопарка?

    Что за тест?

    Ибо Гилевский в принципе показывает клиен-серверный вариант больше 20 может 1 на миллион тестов…

    Reply
  76. starik-2005

    (117)

    Ибо Гилевский в принципе показывает клиен-серверный вариант больше 20 может 1 на миллион тестов…

    Да ну ладно. У меня на ноуте и то 27 в клиент-серверном варианте (убунту + постгри 9.6, I7 2-й редакции).

    Reply
  77. triviumfan

    (115) А Вы случаем не в курсе, турбобуст возможно залочить на материнке INTEL S5520HC?

    Почему то админ пытался в БОИСе крутить и ничего. Может проблема вовсе не в нем…

    Крутили-вертели… и сейчас 2.66 Ггц вообще стабильно, то бишь он вообще вырубился.

    Reply
  78. dmurk

    (116) 1. Поднял скорость INSERT’ов за счет покупки лицензий на все ядра MSSQL. Без лицензий MAXDOP применяется только на временные таблицы в tempdb, за счет чего и прыгает скорость сборки отчетов. Ещё положительно отозвалось после покупки лицензий перенос базы из одного MDF файла на SAS’ах в 16 файлов на NVMe SDD’шке.

    Reply
  79. dmurk

    (119) Турбобуст в серверных материнках не лочится, только в игровых. Всегда упирается в в рекомендованные настройки Intel — длительность не более 1 секунды, и только при разгрузке питания на остальных ядрах кристалла. Более подробно смотрите тематические ролики на Youtube

    Reply
  80. pophmail

    (117)

    Reply
  81. YannikAlx

    (122) СПАСИБО огромное за ответ!

    Я не мог и представить что на 2.1 ГГц можно увидеть такие результаты!

    Reply
  82. YannikAlx

    (123) У нас 2.3 ГГц Е7-4850 v2 дает всего 18… (((

    Правда ОС стоит на HDD, но базы и даже профили пользователей на SSD

    Reply
  83. YannikAlx

    (122) Не могли бы поделиться, как вам удалось достичь таких попугаев?

    Неужели только SQL2012?

    У нас вот 2016 и больше 18 никак…

    Reply
  84. pophmail

    (125) Собственно нечем делиться, установил на новый сервер win2016 и 2008r2 в hyper-v из за особенностей архитектуры ИС на предприятии — так оптимальный вариант для нас. Соответственно 2008 -> MSSQL 2012. Настройка SQL сервера можно сказать «типовая» и минимально необходимая для БД 1C — в сети полно рекомендаций. Никаких «мероприятий по повышению производительности» не выполнял — всё вроде пока работает как нужно…

    Массив RAID1 из двух SSD — на нём, кроме основной ОС 2016, два виртуальных диска *.vhd — один для win2008r2 на втором только БД SQL. Бекапы БД и системы на отдельном HDD.

    Reply
  85. YannikAlx

    Хоть бери и откатывайся на SQL2012 (((

    Reply
  86. YannikAlx

    (126) Предпоследний вопрос остался…

    У вас 1С сервер стоит на HDD или на SSD?

    Reply
  87. pophmail

    (128)

    «Массив RAID1 из двух SSD» — всё на нём, он загрузочный/системный с win2016+Hyper-V с одной вирт. машиной и двумя вирт. дисками:

    на одном *.vhd — 2008r2+SQL сервер + сервер 1С + терминальный сервер

    на втором *.vhd — только база SQL 1C

    Соответственно вообще всё на одном массиве 2хSSD (что не совсем хорошо, но приемлемо), на отдельном HDD только каждодневные бекапы SQL и бекапы системы.

    Reply
  88. starik-2005

    (125)

    Не могли бы поделиться, как вам удалось достичь таких попугаев?

    Так процессор E5-2620 v4 в турбо умеет и на 3.0 работать (одним ядром, чего достаточно для 27 попугаев, ибо это аналогично моему i7 с частотами 2,4 и в турбо 3.0).. У Вас процессор в турбо выдает максимум 2,8 — это 27/3,0*2,8 = 25 в пределе, а в 2.3 будет, соответственно, 27/3*2,3 = 20 (у Вас 18 — тормоза на дисковой подсистеме, полагаю, или сервера разделены, или shared memory не используете, ну и буст отключен, по всей видимости). У меня райзен 5 1600 на SSD PCIe 4-x дает на своих 3,2 ГГц 38, но это если все ядра в performance.

    Reply
  89. YannikAlx

    (130)

    тормоза на дисковой подсистеме, полагаю, или сервера разделены, или shared memory не используете, ну и буст отключен

    Все это не про нас… Именно все наоборот, но все равно 18

    Reply
  90. starik-2005

    (131)

    Все это не про нас… Именно все наоборот, но все равно 18

    Ну если посмотреть на скорость обмена и рекомендованное количество пользователей, то у Вас дела обстоят лучше. Но 96 «ядер» против 12 и не могли дать худший результат. Но если это все разделить на количество ядер, то одно ядро работает медленнее. Но это не так страшно для такой большой машинки. Есть у людей и больше ядер, а в переложении на одно ядро скорость не превышает 10 попугаев.

    Reply
  91. user806483

    (126) Здорово, просто здорово! Зачем давать заведомо неправильные рекомендации?

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

    1 для файлов данных

    1 для логов

    1 для базы tempdb

    и, диск с операционкой ОТДЕЛЬНЫЙ

    % загрузки процессоров на сервере сиквела НЕ БОЛЕЕ 40%

    Памяти должно быть достаточно (значение счетчика Cache Hit Ratio >98 %)

    задержки записичтения на диск не более 5-10 миллисекунд

    Количество фалов базы tempdb должно быть, в идеале, равно количеству ядер процессоров

    Параллелизм должен быть отключен(настоятельная рекомендация Mайкрософта для OLTP баз данных)!

    Не забудьте, если переносили базу с более низкой версии сиквела на более новую, привести в соответствие уровень совместимости

    Не забывайте за регламентные работы (пересчет статистики, перестойку индексов и.т.д. ).

    Опыт показывает, что при выполнении этих условий сиквел 2016 по быстродействию ничем не уступает 2012.

    (126)

    Reply
  92. pophmail

    (135) Никаких рекомендаций никому не давал, в отличии от ВАС, просто описал реально работающую систему.

    Собственно и сейчас сервер работает в той же конфигурации и так же замечательно как и год назад — пока что либо менять не собираюсь, возможно через год-другой, придётся поставить ещё пару SSD во второй RAID1 только для БД если места будет для БД недостаточно виртуальном диске или просто заменю SSD на более ёмкие.

    Reply
  93. user806483

    (138)

    (138) Какая конфигурация? Сколько пользователей? объем базы данных?

    При 5-ти пользователях и 10 документах в день, конечно все будет работать.

    А при 100 пользователях и 5 к документов в день как бы уже и нет.

    Я к тому, что Ваши заявления, о том, что 2012 быстрее 2016 не соответствуют действительности.

    Reply
  94. pophmail

    (139)

    Я к тому, что Ваши заявления, о том, что 2012 быстрее 2016 не соответствуют действительности.

    — это в каком месте я такое заявлял? Укажите.

    Что касается нагрузки — на сервере две БД БП3 и ЗуП, в БП3 документов в день создаётся разных в среднем 450, пользователей максимум 50, постоянно работают 30-40.

    P.S.

    Откуда негатив? Проблемы с обоснованием затрат на железо или просто не работает что то как ожидалось?

    Reply
  95. user806483

    (140)Нет проблем, все работает как надо.

    конфигурация ЕРП

    Reply
  96. user806483

    (141) Блин, сорри, по привычке контрол ввод нажал

    так вот

    пользователей 200 норм , 300 пик

    6 шт терминальных серверов (16core х 3.2Ghz, Intel64GB, DDR4,100 GB, SSD)

    сервер баз данных (32core х 3.2Ghz,400GB DDR4,800 GB, SSD)

    сервер приложений (32core х 3.2Ghz, 200GB DDR4,400 GB, SSD)

    И тут, как понимаете, сваленые на один диск данные, журналы и темпдб , работать не будут, вне зависимости от версии сиквела

    Reply
  97. user806483

    (91)В OLTP системах параллелизм, по утверждению мелкомягких же, больше вредит, чем помогает. А количество файлов темпдб(по опыту работы) должно быть равно количеству ядер процессора, хотя по рекомендациям о5 же мелкомягких до 8 ядер = кол-ву ядер, а после 8 ядер 8+ 1 на сокет, но получить 3 — 5 миллисекунд ожидания записичтения мне в рекомендованных параметрах так и не получилось.

    Reply
  98. pophmail

    (142) Ну конечно, в одном случае достаточно палки, в другом нужна лопата а где то без экскаватора уже не обойтись.

    В первом посте этой темы я упоминал о 50 пользователях для «Гилёвского» теста.

    А так да, признаю у вас «длиннее»…

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *