1С Батл: PostgreSQL 9,10 vs MS SQL 2016

18.12.18

База данных - Администрирование СУБД

PostgreSQL не так давно появился на российском рынке, поэтому у многих специалистов появляются сомнения, насколько удобно с ним работать, учитывая специфику 1С. Антон Дорошкевич, руководитель IT-отдела и направления оптимизации 1С компании «ИнфоСофт» (г. Новосибирск), рассказал о своем опыте применения этой СУБД. Тема его доклада звучала провокационно: «1С-батл между MS SQL 2016 и PostgreSQL версии 9 и версии 10».

Предыстория

MS SQL – наш давний друг. И около 15 предыдущих лет мы жили с полной уверенностью, что для 1С нет лучшего выбора, чем MS SQL. Oracle - сильно дорого, IBM никто в живую не видел, а про Postgres на тот момент совсем ничего не было слышно.

Примерно пять лет назад в мире 1С начал появляться Postgres, за что большое спасибо команде Postgres Pro: Олегу Бартунову и Федору Сигаеву, которые продвинули эту СУБД. Как раз в это время у руководства нашей компании появилась задача резко вырасти в масштабах ИТ-инфраструктуры 1С. При этом была поставлена задача максимально сэкономить бюджет. Мой хороший друг, а по совместительству эксперт по техвопросам 1С сказал: «Антоха, кто не рискует, тот потом на Инфостарте не выступает!». И мы рискнули. И я выступаю на Инфостарте.

 

Первый опыт работы с PostgreSQL на Windows

С чего мы начали? В 2014 году рискнули перевести 5 баз 1С общим объемом порядка 100 гигабайт на Postgres. Не сразу стали перепрыгивать бездну нашего незнания между Windows и Linux, а мир 1С, мне кажется, до сих пор на 80% это мир Windows. Поэтому сначала решили перепрыгнуть пропасть незнания между двумя базами данных: MS SQL и PostgreSQL.

Мы запустили Postgres на Windows. Сначала сильно удивились, что оно заработало. В целом все завелось, заработало, даже база открылась. Правда, потом начались бессонные ночи и дни без обеденного перерыва в попытках настроить Postgres так, чтобы он работал хорошо.

На момент 2014 года информации никакой нет. Есть английская документация, а в мире 1С английский язык не в почете: вы даже код пишете на русском. Поэтому читать тяжело, понимать еще тяжелее. И по сравнению с дружественным интерфейсным MS SQL, где вся настройка – это 5 галочек и 2 цифры, настройки в Postgres – это сотни параметров, слишком непонятно, как и на что отреагирует система, отреагирует ли вообще. Менять приходилось по одному параметру, потому что иначе вообще не поймешь, на что была реакция. А очень часто смена одного параметра не давала никакой реакции. Вот так мы и жили примерно полгода до момента обнаружения той самой ошибки, которая сейчас уже исправлена. О ней рассказывал Олег Бартунов.

Это была фантастика. Я на прошлой конференции по Postgres в Москве рассказывал об этом отдельно. Мы долго не верили своим глазам, будучи уверенными, что это мы неопытные и неправильно настроили систему. Потому что не может так база данных себя вести.

Там происходило очень чудесная вещь: у Postgres есть много файлов статистики. Один из них на весь сервер, и он переименовывается несколько десятков, может быть, сотен, может быть, тысяч раз в секунду. Так построена система: она создает рядом новый файл статистики, переименовывая его в действующий. А наша любимая Windows не дает так работать с файлами в своей файловой системе. Если файл кто-то читает, переименовать его нельзя. Postgres по-честному пишет, что у него нет доступа к статистике, поэтому он будет использовать старые файлы. Ладно, используй. Но нет, происходило 15-ти секундное торможение всего сервера, просто на 15 секунд останавливались все транзакции.

Мы долго не верили своим глазам, мы боялись рассказать это разработчикам. Что они бы подумали? Что какие-то дураки взялись за систему, и теперь непонятно, что от нас хотят. В итоге мы боролись-боролись, но не побороли. И все-таки написали письмо в Postgres Pro. Там тоже долго удивлялись, не верили, что такое может быть. Потом подтвердили, что, действительно, есть косяк. Пообещали исправить.

 

Отказ от Windows

Но у нас время поджимало. И мы решили прыгать через пропасть незнания в Linux. Это вообще кошмар. То есть система Linux – хорошая, но кошмар для админов, которые всю жизнь жили на Windows. Ни красивых окошек, ни мышек, ни кликов, даже диспетчера задач нет. Есть какие-то черные окна с белыми буковками. Когда разберешься, буковки станут цветными. Но это все, что ожидает админа в Linux. Какие службы работают, как что куда поставить – ничего не понятно. Там уже бессонные ночи начались не только у 1С-ников, но и у админов. Но примерно на 20-ой инсталляции CentOS все, вроде, стало хорошо.

 

 

Запустили Postgres, и он тоже заработал. А мы к тому времени уже были крутые чуваки в настройке Postgres, и мы его сразу настроили: и статистику внесли в оперативную память, и все параметры включили как надо.

На текущий момент мы пришли к такой ситуации: у нас 400 с лишним баз, 15 терабайт данных, все это крутится на Postgres на Linux, все сервера Postgres имеют реплики, кто-то имеет каскадные реплики, кто-то имеет несколько реплик на один мастер. То есть это не просто какая-то одноранговая система баз данных. Мы там снимаем бэкапы (backup) с реплик, мы можем восстановить бэкап с рабочей базы в тестовую или базу разработчиков одной строчкой, сохраняя транзакционную целостность данных, при этом не создавая файла бэкапа.

Самое удивительное – все есть в документации! Ты на грабли наступил уже 15 раз, все попробовал, думаешь, что «открыл Америку». Заходишь в документацию, а там прямым текстом написано все то, что ты открывал до этого три дня. Понимать эту документацию ты начинаешь только тогда, когда несколько раз уже окунулся в саму практику.

Так мы счастливо живём до сих пор.

 

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

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

На самом деле, когда приступали к нагрузочному тестированию, вся моя команда, скрестив пальчики думала, ладно, пусть Postgres проиграет, но проиграет не сильно. Все-таки он еще новенький, может быть, нами еще не до конца изученный, но очень активно развивается, и как рассказывал Олег Бартунов, будет очень много крутых фишек в версиях 10 в 11.

 

На момент организации нашего батла была версия 9. И мы решили, что площадкой для батла будет Windows 2012 R2. Почему Windows? Это для того чтобы соревнование было совсем честным, не учитывая операционные системы, просто проверка двух баз данных.

Итак, в красном углу ринга – заслуженный чемпион, обладатель всех поясов производительности 1С, имеющий любые регалии в мире 1С – Microsoft SQL server версия 2016, последняя поддерживаемая на данный момент.

В синем углу ринга – наш новичок, претендент, PostgreSQL. Он выступает сразу двумя бойцами, каждый бьется по очереди. Это Postgres 9.6 и Postgres 10. Обе версии на данный момент поддерживаются 1С.

Платформа взята последняя релизная на момент тестирования. Все сервера баз данных располагаются на одном и том же железе, это прямо одна и та же коробочка. Все настроено оптимально: и дисковые подсистемы, и процессор, и сервера баз данных (оптимально, согласно требованиям фирмы 1С и нашему опыту). Плюс к этому все настроено на многопользовательскую нагрузку, в том числе параллелизм отключен: и на MS SQL, и на Postgres стоят единички.

 

Первый раунд

В первом раунде тяжелая операция – загрузка DT 40 с лишним гигабайт, итоговая база почти 2 терабайта. Сразу оговорюсь, если заглянуть в интернет, там будет много информации о том, что в DT не выгружается база, потому что она более 100 гигабайт, и ничего не работает. Все работает, надо только правильно настраивать сервер 1С, надо понимать, куда сервер 1С выгружает DT. Подтверждаю на своем опыте: база до 5 терабайт (больше не приходилось выгружать) из DT загружается и в DT выгружается. Все остальное – это неумение настраивать сервера 1С.

Первые результаты. С явным преимуществом побеждает MS SQL. Он в 2 раза быстрее загрузил данные в DT. Оба загружали очень долго, Postgres – почти двое суток, а MS SQL – почти сутки.

 

В то время как раз был шум про мельдоний (скандал в СМИ), и мы тоже решили обратиться к допингу. Решили использовать топ вредных советов из интернета на запрос «1С + Postgres тормозит». Первый совет – отключить fsync. Отключили. Получили другой результат – на 10% быстрее, чем с включенным, но риски несоизмеримы. Потому что такое отключение приведет к потере всего сервера баз данных. Вы не сможете ничего восстановить при аварийном завершении. Никогда так не делайте! Это самый вредный совет, который только может быть. Если вдруг вам действительно помогло отключение fsync, и все заработало в 10 раз быстрее, Это значит что у вас сервер неправильно настроен, начиная с самого низкого уровня – с железа, с дисками.

Fsync отключать нельзя никогда!

Но что такое есть в Postgres, что он загружает данные в DT в 2 раза дольше? Наши исследования показали, что это «create index». Он создает индексы намного медленнее MS. В начале 2018 года разработчики обещали, что в версии 12 эта ситуация улучшится. Ждем с нетерпением, думаю, тогда даже в этом раунде мы будем близки к MS SQL.

 

Второй раунд

Тут уже практически пользовательская нагрузка. Операция, на которой проводится тестирование, – восстановление последовательности партионного

учета управленческих партий. Это последняя УПП на момент тестирования, код типовой. Также типовой клиент, у которого итоги рассчитаны на полгода назад. Я не знаю, почему у клиентов такая амнезия по поводу этой регламентной операции, но никто не хочет следить за итогами. Почему, никто объяснить тоже не может. Поэтому берем типовой код, типового клиента, в самих партиях за месяц 150 тысяч документов, а строк в документах около 2 миллионов.

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

В результате у нас получилось, что Postgres всего на 4% лучше. Делалось все очень долго – порядка 18 часов. И бухгалтеры будут вынуждены весь день не работать, чтобы дождаться результатов.

 

Поскольку результат получился не очень большой, плюс 4%, решили вместо

мельдония использовать что-нибудь похлеще. Второй в рейтинге вредных советов интернета на запрос «1С + Postgres тормозит» оказалась рекомендация отключить autovacuum. Отключили.

Результат получился еще хуже – примерно на 5%. То есть если бы мы изначально настроили систему с помощью этого вредного совета, мы бы вообще раунд полностью проиграли, было бы минус 0,6%.

На этом хочу остановиться чуть подробнее. Что за зверь такой autovacuum, зачем он нужен. И почему разработчики Postgres на каждой конференции твердят: «Не отключайте autovacuum!», но народ упорно его отключает. Попытаюсь объяснить, как говорят, на пальцах.

Чтобы понять, для чего нужен autovacuum, нужно понять, как Postgres работает с данными. Операция insert – записали строчку. Помимо строчки, пишется еще два служебных параметры x min и x max. В x min записывается номер транзакции, которая выполнила этот insert. Операция delete на самом деле ничего не удаляет, она просто в служебное поле строки x max записывает номер транзакции, которая ее удалила. Потом идет самая прикольная операция update. На самом деле нет такой операции, это просто delete + insert.

 

А в мире 1С, к сожалению, просто обожают работать задним числом: для пользователей не вопрос перевести месяц или год. То есть апдейтов миллионы. У нас не столько растут данные с помощью insert, сколько с помощью update, мы постоянно что-то обновляем. Из-за этого база имеет эффект распухания. Ладно, пусть раздувается, скажем админам, что это их проблемы, пусть увеличивают диски. Они увеличат. Но если было бы все так просто, никто не заморачивался бы. Проблема в том, что данные хранятся не где-то в сферическом вакууме, они хранятся в страницах. И когда у вас в страницах хранится куча мертвых данных, а в Postgres есть такое страшное понятие, как мертвые строчки, и когда вы делаете запрос базе данных, движок вынужден поднять все страницы с данными, отфильтровать данные, в которых x max пустой, и только с ними потом работать. Вы каждый раз заставляете Postgres ставить олимпийские рекорды по поднятию данных с дисков, чтобы выдать вам выборку.

 

Что делает autovacuum? Autovacuum – это своеобразный пылесос, он циклически и периодически идёт к каждой таблице вашей базы данных и делает выборку всех данных, где x max не пустой и чистит их физически. Теперь туда insert возможен, у вас на страницах будет больше живых данных, чем мертвых. Эффект – вам проще поднимать страницы. Это первое.

Второе. Помимо чистого autovacuum, есть еще такой фоновый процесс autovacuum analyze. Это аналог фонового обновления статистики в MS SQL. Без него планировщик никогда не узнает, что вы в таблицу добавили данные. Было в таблице 100 записей, добавили вы миллион записей, но планировщик свято уверен, что там их 100. И при любом запросе не парится и не ищет никакие индексы. Он просит TableScan, ему его дают, а там миллион записей. И вы сидите и ждете несколько минут.

Поэтому никогда не выключайте autovacuum. Надо его правильно настраивать, но ни в коем случае не отключать. Он имеет кучу настроек, и если у вас autovacuum настроен достаточно агрессивно, то есть он срабатывает на очень маленьком проценте изменения данных в таблицах, то вам не нужны даже ночные и недельные регламенты над базой данных, которые имеются у MS SQL. Ничего не надо делать, просто ничего. Кое-что делают только админы, если точно знают, что в этой таблице недавно удалили огромный массив данных, и ее нужно, грубо говоря, сжать. Тогда делается autovacuum full – это реструктуризация таблицы в понятиях 1С. Рядом создается табличка, куда и копируются данные.

В других случаях вам никакие регламенты, ни ночные, ни недельные, не нужны. Autovacuum  все сделает за вас. Только настраивайте его правильно.

 

Третий раунд

Та же самая операция, но бойцам меняем тренера. Приглашаем эксперта по техвопросам, он месяц чешет затылок, два часа кодит, меняет пару запросов. Особо большой эффект дал запрос, где поменяли получение остатков на момент документа. Клиент остается типовой с амнезией по поводу пересчета итогов. Запускаем!

В этом раунде Postgres выигрывает с явным преимуществом.

 

 

Гораздо благодарнее отнесся к более правильному коду, код правильный в той части, что поднимает гораздо меньше данных, намного меньше данных. Postgres выиграл почти в 2 раза, а по сравнению с изначальным временем выполнения процедура целиком стала выполняться в 3 раза быстрее. И это после вмешательства компетентного специалиста 1С, который понимает, что делать. Я даже думаю, что, обновив весь сервер за космические деньги, вы вряд ли добьетесь большего ускорения, если будут неправильные запросы.

Ничего бы этого не произошло, и этого бы доклада не было, и Postgres бы у меня не было, если бы в свое время Фёдор Сигаев – ведущий разработчик команды Postgres Pro, а также один из всего лишь двух коммитеров во всей России не создали патч OnlineAnalyze для 1С.

 

Что это такое? Во всем нормальном мире база данных считает, что временные таблицы – это чуть ли не ошибка проектировщика базы данных, и уж точно ошибка программиста, который просто не умеет писать правильные запросы. И считает, ну ладно, раз уж так случилось, простим, создадим этим неучам временную таблицу. Она в любом случае будет очень маленькой – на сотню, может, тысячу записей, но ни в коем случае не на миллионы и не на миллиарды, как это в 1С сделано. 1С вся построена на временных таблицах: на любой запрос мы создадим временные таблицы. И тут возник вопрос о быстродействии Postgres в связи с этим. Postgres крайне прохладно относится к временным таблицам, он их вообще «за людей не считает». Это просто какой-то артефакт, который создался. А мы же когда пишем кода в 1С, мы даже индексируем временные таблицы (прямо индексы по ним создаем). А Postgres на все плевать, потому что планировщик просто не в курсе, что это за временная таблица, сколько там записей, что в ней есть индекс. Он ничего не знает. Он всегда пользуется TableScan и все.

И был разработан патч OnlineAnalyze, который заставляет наш autovacuum analyze, грубо говоря, проверять и временную таблицу. Причем, заставляет ее проверять мгновенно во время создания и еще каждые новые тысячи записей. Он их проверяет, анализирует, и таким образом у нас планировщик запросов четко знает, сколько записей в этой таблице, что за индексы по ней, и строит запрос правильно.

Ради интереса отключили OnlineAnalyze. Получили результат тестирования в 17 раз хуже. Мы прождали несколько дней, она у нас все-таки посчитала, результаты упали в 17 раз.

К сожалению, в своей практике сталкиваюсь очень часто и даже на очень крупных предприятиях, на которых есть Postgres и которые уже поискали ответы в интернете на запрос «1С + Postgres тормозит», что люди следуют этим 2 вредным рекомендациям. А тем временем в самом конце конфигурационного файла есть строчка OnlineAnalyze.enable = off. Но если поправим настройку на on, все взлетает.

Я вас призываю, если у вас уже стоит Postgres, посмотрите свои конфигурационные файлы. И включите патч, включите! Это очень крутая вещь.

И еще один момент. В последней сборке Postgres, опубликованной на сайте 1С, к сожалению, этого патча нет. Его просто нет в строчке предкомпилированных библиотек, он в настройках есть и даже внизу включен, но его нет в строчках предкомпилируемых библиотек. Надо добавить. Внимательно отнеситесь: патч должен быть, патч должен быть включен. И будет резкий рост производительности.

 

Финальный раунд

На этот раз меняем нашего типового клиента на идеального, который не страдает амнезией, и пересчитываем итоги на начало расчетного месяца. Запускаем ту же самую операцию. Получаем еще раз двухкратное ускорение той же самой операции, а по сравнению с первыми результатами, когда операция длилась почти 18 часов, ускорение в 6 с лишним раз.

И тут Postgres опять выиграл. Он опять более благодарно отнесся к порядку в данных, чем MS. Выиграл не так круто, как на старых итогах, но все-таки на четверть быстрее – это очень серьезный результат.

 

 

Итоги батла

Итак, Postgres выиграл со счетом 3:1. Но хочу обратить внимание, что на пользовательских нагрузках, а именно многопоточное проведение документов, участвующих в восстановление последовательности партионного учета, Postgres выиграл вообще со счетом 3:0. Вот такие противоречивые результаты.

 

 

 

Postgres на Linux и Postgres на Windows: что лучше

Сами удивились, сами себя похвалили, какие мы молодцы, что 5 лет назад сделали крутой выбор. Но встречаем очень часто вопрос: стоит ли переходить на Postgres.10 на Windows.

Тот самый злополучный баг Postgres, когда система замирала на 15 секунд из-за недоступности файла статистика исправлен в версии Postgres 10.4.1. Говорю об этом отдельно, потому что эта версия на данный момент 1С не поддерживается. Она есть только на сайте Postgres Pro, мы ее поставили и запустили ради этой конференции. Что получили? При 10 потоках все почти одинаково, что на Postgres версии 9, что на Postgres версии 10. При 20 потоках Postgres.10 в 3 раза быстрее. Я бы даже сказал иначе: Postgres.9 на Windows в 3 раза медленнее, потому что возникает та самая блокировка, замирание на 15 секунд. Причем, оно рандомное, то есть вы не угадаете, это будут замирания один раз в минуту или у вас будет секунда работы, 15 секунд замирание и так тысячу раз.

 

 

При 50 потоках Postgres.9 медленнее в 11 раз. При 100 потоках мы не дождались завершения операции. Данные я не привожу. Нам надоело: мы неделю ждали.

Второй самый популярный вопрос, стоит ли переходить на Linux? Да, стоит переходить! По нашим данным, а они у нас достаточно релевантные – 15 терабайт и 400 баз, Postgres работает почти в 2 раза быстрее.

 

 

Почему? Не потому что Postgres такой плохой на Windows, а потому что файловая система Windows не способна обрабатывать такое большое количество файлов. Тут вся фишка в том, как Postgres и MS хранят файлы. Если MS хранит по умолчанию всю вашу базу данных в двух файлах (это файл данных mdf и файл журнала транзакций lgf), то Postgres хранит каждую таблицу в отдельном файле и каждый индекс в отдельном файле.

Типовая база бухгалтерии содержит 6 тысяч таблиц и 20 тысяч индексов. Значит, одна база будет в Postgres представлена 26 тысячами файлов. На наших серверах мы примерно делаем по 60 баз на один instant Postgres, это в районе 2 миллионов файлов. С таким количеством файлов Linux управляется, как мы видим, почти в 2 раза быстрее, чем Windows.

Поэтому если вы уже всерьез на Postgres, а всерьез – это наличие хотя бы 20 сессий, начинайте подумывать о переходе на Linux. Причем, не обязательно железный, можете на этой же винде, если сильно страшно, то поднимите hyper-v, поднимите виртуалку, на эту виртуалку ставьте Linux, ставьте Postgres, и получите отличный эффект. Проверено!

 

Два важных момента

Хочу обратить еще внимание на два небольших досадных недоразумения, которые пока есть еще в Postgres. Первое недоразумение – это такой параметр по настройке default_statistics_target. Это своеобразный множитель количества страниц, который берет Postgres для расчета статистики. Он этот множитель умножает на 300 и берет такое количество страниц. Множитель может иметь значение от 1 до 10 тысяч, по умолчанию 100. Все хорошо работает при сотке. Но как только мы ставим 10 тысяч, Postgres, действительно, берет много страниц, считает статистику, но потом запросы к базе начинают резко тормозить. К разработчикам мы еще с этим не обращались, вот-вот обратимся, думаю, победим и разберемся.

 

 

Второй момент – это репликация. Просто обращу ваше внимание. Разработчики говорят: репликации – это не бэкап. Это действительно так. Кроме того, репликация может отставать на часы и дни. Потому что она однопоточная. Все, что мастер-сервер удалил, создал, обновил в сотне своих потоков, все это придется догонять в один поток. Поэтому реплика это хорошо, мы, например, с нее бэкапы льем, но перед тем, как слить бэкап с реплики, мы проверяем какое отставание. Если отставание не больше секунды, то делаем бэкап с нее, а если больше – то с мастера.

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

 

 

Данная статья написана по итогам доклада, прочитанного на конференции INFOSTART EVENT 2018 EDUCATION.

 

30 мая - 1 июня 2024 года состоится конференция Анализ & Управление в ИТ-проектах, на которой прозвучит 130+ докладов.

Темы конференции:

  • Программная инженерия.
  • Инструментарий аналитика.
  • Решения 1С: архитектура, учет и кейсы автоматизации на 1С.
  • Управление проектом.
  • Управление продуктом.
  • Soft skills, управление командой проекта.

Конференция для аналитиков и руководителей проектов, а также других специалистов из мира 1С, которые занимаются системным и бизнес-анализом, работают с требованиями, управляют проектами и продуктами!

Подробнее о конференции.

 


См. также

Установка и получение лицензии на базовую конфигурацию 1С на Mac OS

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

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

11.04.2024    319    pahmutov    0    

2

Установка тонкого клиента 1С на Rasbian (Raspberry Pi 5)

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

После приобретения Raspberry Pi 5 решил проверить, есть ли возможность использования устройства для организации тонкого клиента. В результате столкнулся с особенностью установки 1С: Предприятие 8.3.23 на Raspbian, решением которой я хочу поделиться с сообществом.

07.04.2024    576    Bessome    3    

5

Порционный шринк базы

Администрирование СУБД Бесплатно (free)

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

28.03.2024    1245    Garilia    2    

15

Создаем сценарии обслуживания SQL в Центре Контроля Качества 1С (Центр Администрирования)

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

Данная статья научит вас, как создавать скрипты обслуживания MS SQL для Центра Контроля Качества (ЦКК) или Центра Администрирования (ЦА).

20.03.2024    724    Silenser    0    

5

Поинтегрируем: сервисы интеграции – новый стандарт или просто коннектор?

Обмен между базами 1C Администрирование СУБД Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

В платформе 8.3.17 появился замечательный механизм «Сервисы интеграции». Многие считают, что это просто коннектор 1С:Шины. Так ли это?

11.03.2024    5803    dsdred    53    

82

Инструкция по установке Postgres для OLTP приложений и 1С. Часть 1. Базовая конфигурация

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

В Postgres достаточно подробная документация, и, видимо, поэтому при инсталляции Postgres для 1С большинство параметров приходится выставлять самим. Параметров в Postgres много, а составить эффективную комбинацию не так просто. Все упрощается, если рассмотреть профиль нагрузки, например, 1С это прежде всего профиль OLTP нагрузки – так устроены его метаданные (объекты). Если сосредоточиться на оптимизации профиля OLTP, понимание Postgres сразу упростится.

15.02.2024    2519    1CUnlimited    14    

28

Очистка устаревших патчей в конфигурациях на базе БСП

Администрирование СУБД Бесплатно (free)

В этой короткой заметке хочется рассказать о быстром и удобном способе удаления расширений-патчей как в типовых конфигурациях, так и любых других, использующих БСП.

01.02.2024    1809    Sergey1CSpb    20    

16

Как запустить сервер лицензирования 1С на примере облачной платформы

Администрирование СУБД Россия Бесплатно (free)

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

25.01.2024    1923    doctor_it    15    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
157. Gilev.Vyacheslav 1911 14.10.20 18:00 Сейчас в теме
(156) тут вопрос не лично во мне, а в том что согласно вашей терминологии подавляющая часть ИТ бизнеса это "не умеет готовить"
+
158. wkon 13 15.10.20 16:38 Сейчас в теме
(157)
подавляющая часть ИТ бизнеса это "не умеет готовить"

А что тут удивительного. Связка 1С+Линукс стала нормально работать сравнительно недавно, поэтому подавляющая часть ИТ бизнеса действительно не умеет это готовить. Это просто факт, не ставящий целью кого-то принизить.

А по существу вопроса, если для малого бизнеса действительно проще сидеть на WIN, то для среднего и тем более крупного вырастить команду Линукс-специалистов под определенные задачи наверно выгоднее, чем бесконечно платить за лицензии Майкрософт.
+
73. Gilev.Vyacheslav 1911 18.12.18 19:17 Сейчас в теме
(68) или попробуйте с сервера 1С на линуксе сделать TRUNCATE в таблице PG (если он там рядом)
+
94. A_Max 19 19.12.18 12:03 Сейчас в теме
(73) Вячеслав. Я с ОЧЕНЬ большим уважением отношусь к вашей квалификации, опыту и тому что делитесь наработками и практиками с другими. Но нельзя общаться вот так обывистыми фразами общаться.

Я не понял что вы предлагаете сделать?
* Подключиться из 1С напрямую к pg и сделать транкейт? Тогда не понятно причём тут 1С.
* Сделать очистку регистра сведений записью путого набора?
* Ещё какой-то вариант?

Под рукой pg+1c, могу только дома попробовать

Вы заинтриговали, действительно интересно что не так
+
95. Gilev.Vyacheslav 1911 19.12.18 13:13 Сейчас в теме
(94) ничего не предлагаю, а говорю что некоторые задачи требуют больше времени и более высокого порога вхождения по квалификации
отвечаю на ваши вопросы:

* Подключиться из 1С напрямую к pg и сделать транкейт? Тогда не понятно причём тут 1С.

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

очищается не 1Ся таблица, но это и не важно потому что вы пишите про костыль в частном случае, а не общее решение
** Ещё какой-то вариант?

тоже самое на PG под виндой вызвать черед ODBC проблем у моего программиста не возникло
+
42. triviumfan 93 18.12.18 15:11 Сейчас в теме
(33) Запросы адаптировали под postre? УТ11 ими сильно щеголяет.
+
54. Трактор 1247 18.12.18 15:32 Сейчас в теме
(42) Специально не адаптировали. Так работает.
+
71. Noob001 18.12.18 18:57 Сейчас в теме
Почитал с удовольствием.
Сам использую Debian или Ubuntu + PGSQL
Уже достаточно давно, начинал с PG 9.1
По сути ничего сверхъестественного в этом нет, ни в linux ни в Pgsql.
Просто надо изучить, и понять как работает.
СУБД тут сравнили, результат я бы сказал, нет никакой разницы.
Скажу про Linux vs Windows что касается именно серверов.
Когда научитесь Linux поймете что он гораздо круче, проше, удобнее, и производительнее.

Для UserSpace Windows неоспоримый лидер.
Мах; uncle_Vasya; akela2014; farukshin; t.v.s.; +5
76. alex_sh2008 4 18.12.18 19:57 Сейчас в теме
(0)Тест прикольный, но ни какого отношения не имеет к реальному сравнения производительности серверов баз данных, тем более когда 1С и sql сервер сидят на одном хосте, sql сервер душит по ресурсам 1С настолько сильно что у 1С производительность может упасть почти до 0.
aspl; Dach; blackhole321; +3 1
79. Ceboo 9 19.12.18 08:31 Сейчас в теме
(76)
когда 1С и sql сервер сидят на одном хосте, sql сервер душит по ресурсам 1С настолько сильно что у 1С производительность может упасть почти до 0

Уважаемый таки это всегда бывает, когда устанавливаются СУБД по дефолту и 1С сервер по дефолту. А с настройкой такого не бывает, справедливо как для МС так и Слона.
+
81. alex_sh2008 4 19.12.18 09:32 Сейчас в теме
(79)Эти 2 сервера по разному работают на винде, и в большей степени мои слова относятся к МС, с слоном дела лучше, он с 1С получает ресурсы на одинаковом уровне, а вот МС имеет свои функции работы с ресурсами и может по просту их блокировать и ОС эти ресурсы не будут доступны, как память так и процессоры.
+
104. Gilev.Vyacheslav 1911 19.12.18 14:18 Сейчас в теме
(81) скуль имеет афинити маску для процессоров и предельно допустимый объем озу для экземляра скуля, не надо нагнетать
+
115. alex_sh2008 4 19.12.18 14:46 Сейчас в теме
(104)Дело не в нагнетании а в принципах работы серверов, а в последних версиях еще и soft-NUMA появилась, которая еще больше ограничивает доступность ресурсов для ОС.
+
80. Dragonim 139 19.12.18 09:31 Сейчас в теме
Пока читал чуть не прибил себя своей же рукой.
1.
На момент 2014 года информации никакой нет.
Работа с PostgreSQL настройка и масштабирование. 4 издание вышло в августе 2014 года. Третье издание вышло в 2012 году. Что вы ещё хотите знать о PostgreSQL на русском языке, чтобы начать им пользоваться?
2.
И по сравнению с дружественным интерфейсным MS SQL, где вся настройка – это 5 галочек и 2 цифры
–вы точно пытались оптимально настроить MS SQL? Не врёте?
3.
То есть система Linux – хорошая, но кошмар для админов, которые всю жизнь жили на Windows. Ни красивых окошек, ни мышек, ни кликов, даже диспетчера задач нет. Есть какие-то черные окна с белыми буковками.
Я бы не завал этих людей "админы". Называйте их "продвинутый пользователь windows". Если бы описанные в цитате люди действительно были админами, то они бы на черные окошки командной строки windows насмотрелись бы до посинения (тут есть шутка для понимающих).
4.
На момент организации нашего батла была версия 9. И мы решили, что площадкой для батла будет Windows 2012 R2. Почему Windows? Это для того чтобы соревнование было совсем честным, не учитывая операционные системы, просто проверка двух баз данных.
– Честно было бы если бы вы каждую систему испытывали в той среде для которой она была создана и в которой она чаще всего используется на практике.
5.
Все настроено оптимально: и дисковые подсистемы, и процессор, и сервера баз данных (оптимально, согласно требованиям фирмы 1С и нашему опыту).
– настройки в студию.

По поводу самого батла сказать нечего. Параметры железа не даны. Параметры windows не даны. Параметры настройки sql не даны. Что специалист накодил за 2 часа после месяца обдумывания, неизвестно. Все тесты проводятся на базах гигантского объёма, которые имеются у единиц.

Про OnlineAnalyze я вообще не понял. У вас он был включён и поэтому такие результаты были до этого, или вы его только в третьем раунде включили и получили увеличение производительности в 17 раз?

В основном эта статья не соответствует своему названию. Батла тут минимум, больше рассказа про то как работает PostgreSQL с несколькими элементарными советами как его правильно готовить.
uncle_Vasya; Dach; Gilev.Vyacheslav; akimych; Fox-trot; t.v.s.; zavhome@gmail.com; +7
107. Gilev.Vyacheslav 1911 19.12.18 14:19 Сейчас в теме
(80) главный минус - что перепроверить нельзя, надо верить наслово )
+
82. VSvintsov 2 19.12.18 09:42 Сейчас в теме
какой то подход однобокий - как будто в организации с 500 пользователями 1С, кроме серверов БД больше ничего нет.
привели бы структуру расходов такой организации за год , выделив те % которые занимает стоимость владения сервером БД, и главное те % , которые приходятся на экономию на PgSQL относительно MS SQL с учетом переучивания персонала на Linux + PgSQL
Очень интересно сравнить эти % экономии с % расходов на коммунальные платежи :)
и как правильно выше замечено - на стадии планирования экономия на PgSQL признается не достаточной чтобы начинать реорганизацию или рисковать внедряя новый проект на PgSQL
______

С одной стороны понятно , что статья сделана грамотно: продемонстрировано владение предметом, убежденность в своей правоте, предъявлены конкретные результаты, конкурентные преимущества внедренцев и указана выгода бизнеса .
И даже один из авторов комментариев явно заинтересовался …

но с другой - вот вспомнилось :
Золотой теленок (С):
(О.Бендер) ... Он развернул перед смущенным шофером удивительные дали и тут же раскрасил их в голубой и розовый цвета. – А в Арбатове вам терять нечего, кроме запасных цепей, – убеждал он. — По дороге голодать не будете. Это я беру на себя. Бензин ваш – идеи наши! ….

____
т.е. битва за "бензин" ".. Бензин ваш - идеи наши! " :-)
но что делать - капитализм....

последние несколько месяцев что-то массировано началась реклама PgSQL - "и это "жж" неспроста" :-)
хотя Infosoft давно демонстрирует умение работать с PgSQL
Dach; zavhome@gmail.com; +2
99. Gilev.Vyacheslav 1911 19.12.18 14:12 Сейчас в теме
(82) всего за одни пост я стал вашим поклонником )))
+
106. w.r. 644 19.12.18 14:18 Сейчас в теме
(82)

последние несколько месяцев что-то массировано началась реклама PgSQL - "и это "жж" неспроста" :-)


переходим на отеческое отечественное ПО. Хотя оно такое же "отечественное", как YotaPhone и смартфон от Яндекса
+
84. svk 19.12.18 09:59 Сейчас в теме
Вопрос дилетанта: А как проверить включен-ли патч OnlineAnalyze в виндовой Postgres и как добавить его туда если нет??
+
89. пользователь 19.12.18 11:44
Сообщение было скрыто модератором.
...
90. w.r. 644 19.12.18 11:45 Сейчас в теме
(84)
ответ со stackoverflow

https://stackoverflow.com/questions/21799956/using-psql-how-do-i-list-extensions-installed-in-a-database

In psql that would be

\dx


See the manual for details: http://www.postgresql.org/docs/current/static/app-psql.html

Doing it in plain SQL it would be a select on pg_extension:

SELECT * 
FROM pg_extension


http://www.postgresql.org/docs/current/static/catalog-pg-extension.html
uncle_Vasya; +1
126. Vlad_M_75 21.12.18 10:20 Сейчас в теме
(90) Не работает такой метод. Он просто не считает Online_Analyzer за расширение.
+
91. пользователь 19.12.18 11:46
Сообщение было скрыто модератором.
...
131. MariusUrsus 25.12.18 14:46 Сейчас в теме
(84) Подключись к любой базе и выполни запрос
SHOW online_analyze.enable;


Если вернет on, то значит включен. Если не включен, то проверь файл postgresql.conf на наличие следующих строк
shared_preload_libraries = 'online_analyze, plantuner'

online_analyze.enable = 'on'
online_analyze.table_type = 'temporary'
online_analyze.verbose = 'off'

plantuner.fix_empty_table = 'on'


- чего нехватает добавь и перезагрузи сервер.

После включения online_analyze еще желательно выполнить пересчет статистики по всей базе VACUUM ANALYZE. Иначе 1С-ка какое-то время бедет вести себя "задумчиво".
uncle_Vasya; +1
85. w.r. 644 19.12.18 10:05 Сейчас в теме
Интересно сравнение скорости работы запросов с Postgre 10.5.6 1C, в которой, как заявляют

Улучшен формируемый план запроса и повышена производительность выполнения запроса, если в запросе есть выражение СГРУППИРОВАТЬ ПО и в базе данных имеется индекс, соответствующий списку полей в выражении СГРУППИРОВАТЬ ПО.
+
97. Vlad_M_75 19.12.18 14:00 Сейчас в теме
Присоединюсь к предыдущему вопросу, но немного в другой форме: Имеет ли смысл на связке Windows Server - 1С + CentOS 7 - Postgre 9.6 менять Postgre на 10? (на последние совместимые версии с 1С?)
+
101. starik-2005 3036 19.12.18 14:16 Сейчас в теме
(97)
Postgre на 10
Есть мнение, что параллелизмстал лучше (переписали блок) и джоины в ряде случаев ведут себя лучше (очень незначительный ряд). Остальное примерно то же самое осталось в плане движка. Сделали секуионирование таблиц и улучшили репликацию. По-сути - все...
+
112. Gilev.Vyacheslav 1911 19.12.18 14:30 Сейчас в теме
(97) очень скользкий вопрос, мы вот на некоторых базах сидим на 9.4 потому что у нас запросы на параллелизме не ускорятся
параллельные подзапросы хороши только тогда, когда есть критерий, по которому можно разобрать "работу" на потоки, а если у вас еще и в таблице меньше 100 000 строк то вряд ли вы увидите на глаз ускорение, а вот со сменой на 10.4 и выше надо по мнению фирмы 1С и платформу надо ставить последнюю, а она пока не поражает своей стабильностью
uncle_Vasya; +1
127. alex_sh2008 4 21.12.18 11:08 Сейчас в теме
(97)Есть такое правило, не трогай если работает и все страивает, а если уж тронул то готовся к веселью и танцам с бубном.
+
113. alex_art 14 19.12.18 14:30 Сейчас в теме
Нужно правильно относится к данной публикации: автор взял Мерседес и Оку, с учетом особенностей каждого из авто настроил у обоих систему охлаждения, долго повозился с Окой, настроил НАСОС ОХЛАЖДАЮЩЕЙ ЖИДКОСТИ (хз есть вообще такой в природе или нет :))) на максимальную производительность, на Мерсе трогать ничего не стал - он же мерс, епта !! Потом говорит - Друзья ! Вы же осознаете что вам важно как быстро охлаждающая жидкость пробегает по системе охлаждения ? - ну так вот вам ! Она у Оки бежит быстрее !!
Сразу появляется желание назвать публикацию "ШОК КОНТЕНТ !!!!!!! СЛОНИК НОГЕБАЕТ СКУЛЯ !!! СМОТРЕТЬ ДО КОНЦА !!"
Автор конечно не пишет что после этих эээ "опытов в вакууме", если в Оку и Мерс засунуть по 4 человека, Ока все равно поедет быстрее, что в целом спасает ситуацию. Но польза сего исследования вызывает сомнения.
Лично для меня, эта статья не станет катализатором к смене СУБД, хотя проблемы с производительностью мы испытываем немалые.
+
116. starik-2005 3036 19.12.18 14:47 Сейчас в теме
(113)
Нужно правильно относится к данной публикации: автор взял Мерседес и Оку, с учетом особенностей каждого из авто настроил у обоих [что-то невнятное]
В действительности PostgreSQL - это не Ока, а MS SQL - не Мерс. Скорее так: взяли готовый завтрак из Азбуки Вкуса и ящик продуктов из Ашана. После того, как второе приготовили, завтрак оказался вкуснее, но пришлось потратить время.

Вообще, на свободных СУБД весь Интернет живет. MySQL на 2-м месте рейтинга "мерседесов" после Oracle, а MS только на третьем. Ну а за ними с некоторым отрывом Postgre. Но при этом в 1С Oracle работает так себе, ибо 10 лет подряд 1С-ники пилили свое решение для работы с MS SQL, и уже после этого подоткнули к нему все, что только можно (например, IBM DB2, который в отдельных сценариях работы заставит курить в углу даже Oracle, а не только MS SQL).

Но если говорить о задачах бизнеса вообще, то у него основная задача - создавать стоимость. ИТ для бизнеса - это инструмент снижения затрат и повышения производительности труда (чтобы не вручную по картотеке искать партии и не вычеркивать оттуда по строчке). И не важно, какую СБУД для этого использовать, важна стоимость владения и, в меньшей степени, способность СУБД обеспечивать бизнес-процессы организации, связанные с сохранением и извлечением данных. В 1С извлечение и сохранение данных избыточно: объекты сохраняются целиком, а не только их изменения (а объект может содержать в себе туеву хучу таблиц); остатки извлекаются каждый раз при работе с исторически-зависимыми данными - нет промежуточного пула исторических данных, т.е. они не кешируются, ... Это как для соблюдения атомарности делается, так и для минимальных издержек ума программиста для обеспечения консистенции внутри транзакций. В итоге и тормоза, которые связаны не сколько с проблемами СУБД, сколько с проблемами архитектуры 1С как таковой, так и архитектуры типовых решений.
A_Max; +1
118. dr2c 44 20.12.18 09:04 Сейчас в теме
Буквально вчера 1С опубликовала 10.5 пострес.
В нем уже нет того замирания на 15 сек?
w.r.; +1
119. capitan 2470 20.12.18 09:43 Сейчас в теме
Несколько мифический батл.
Если Жигули 6 модели вытянут на тросе Газельку по сельской дороге, это не значит что они круче Ламборджини.
Если бы в тестах по APDEX Postgres побил бы Скуль я бы сильно удивился для начала, а потом стоя апплодировал.
А эти тесты - отдел ИТ сделал под себя.
Порассуждайте хотя бы с точки зрения бизнеса - есть штат сотрудников, он работает в рабочее время (не всегда) - каламбур.
И от быстродействия операций происходящих в рабочее время зависит быстродействие фирмы.
Их с переменным успехом меряет APDEX.
А ваши залития невероятных баз и пересчеты итогов в принципе не критичны пока они в выходные успевают проходить.
Так вот на APDEX микрософт на микрософте просто разорвет Постгри, как бы хорошо я к Постгри не относился
На линуксе Постгри еще побьется при всех правильных настройках.

Еще более мифические советы - никогда не делайте то, никогда не делайте се.

Я бы дал совет - никогда не говорить никогда, а делайте того, что знаете зачем делаете.
В штатную базу например не заливается обычно миллион записей в случайный момент времени, она идет в ровном режиме.
Поэтому спокойно в ней можно делать обновление статистики регламентно, а автообновление убрать.
+
120. Дмитрий74Чел 234 20.12.18 11:22 Сейчас в теме
(119) коллега, а где ваши пруфы про "на APDEX микрософт на микрософте просто разорвет Постгри"?
+
121. starik-2005 3036 20.12.18 11:34 Сейчас в теме
(120) вообще, мелкософт на далеко не мелкософте очень даже хорошие цифры показывает (как раз в части стоимости запроса, где лидирует... внимание!... "Microsoft SQL Server 2017 Enterprise Edition SUSE Linux Enterprise Server 12 SP3 для X86_64"). Ну а тут с достаточно серьезным отрывом за цену запроса в секунду (это ключевой показатель для бизнеса, да?) лидирует Postgre (кстати, на винде). Странно, да?

PS: кстати, ошибся - лидирует что-то другое )))
+
124. capitan 2470 20.12.18 12:20 Сейчас в теме
(121)
мелкософт на далеко не мелкософте очень даже хорошие цифры показывает

Тест TPC-H измеряет производительность при характерных нагрузках на хранилище данных. При проведении теста TPC-H используется технология обновляемой обработки в памяти columnstore в SQL Server, позволяющая достичь высочайшей производительности при обработке запросов.
Те же маркетинговые уловки
+
125. capitan 2470 20.12.18 12:23 Сейчас в теме
(121)У Microsoft очень много решений ускоряющих как раз высоконагруженные системы.
В версии Энтерпрайз и оттуда они постепенно уходят в Стандарт.
А постгри для высоконагруженных ситем надо основательно напильником обработать.
+
123. capitan 2470 20.12.18 12:15 Сейчас в теме
(120)Намеки на эти пруфы есть в выступлении, минута 25 примерно - Постгри заточен под файловую систему линукса, его сейчас конечно допиливают под винду, но это костылики.
w.r.; +1
122. starik-2005 3036 20.12.18 11:45 Сейчас в теме
Странно, но не смог я найти результатов тестирования постгреса. Или никто не озаботился бенчмарком (а этот термин еще в лохматые годы придумали в компании Ксерокс для того, чтобы показать, на сколько их ксероксы круче ксероксов конкурентов), или на столько все плохо, что не стоит. Ибо Оракл на мегадевайсах по 30кк запросов в секунду хреначит.
+
130. w.r. 644 25.12.18 14:03 Сейчас в теме
Тесты выгрузки/загрузки DT (размер базы 27GB)

Winserver 2012 R2 MSSQL 2016 - Ubuntu 18.04 PGSQL 9.6.9 1C

MSSQL на чтение быстрее на 30%
MSSQL на запись быстрее на 50%
+
136. azhdan 17.02.19 01:07 Сейчас в теме
Отключать fsync не понимая - нельзя тут согласен. В личном опыте сервер 10 лет работы с отключенным fsync. Тушили наживую и не раз, (раз даже админ ногой задел питалово сервера и идущее от упса :) ). и ничего не рухнуло. Просто, просто как по мне автор доклада должен был не категорично писать не трожь fsync, а озвучить на что влияет этот параметр... и что если стоит RAID контроллер с BBU, то аварийное завершение не убьет сервер, если конечно его не включат через неделю дождавшись разряда батарейки питающей память хранящую недозаписанную транзакцию на диск.
+
137. KostyaBu 20 18.02.19 10:18 Сейчас в теме
Очень хорошая статья попробую OnlineAnalyze.enable = on
+
138. Niva36 06.03.19 12:17 Сейчас в теме
Антон, подскажите пожалуйста правильно ли у меня настроено:
online_analyze.threshold = 50
online_analyze.scale_factor = 0.1
online_analyze.enable = on
online_analyze.verbose = off
online_analyze.min_interval = 10000
online_analyze.table_type = 'temporary'
plantuner.fix_empty_table = false


и для чего online_analyze.verbose и нужно ли его включать?
+
140. Indgo 364 17.04.19 10:49 Сейчас в теме
Из личного опыта работы в Postgres:
На posgres sql нет возможности переноса временных таблиц на другой диск. К примеру на какой нибудь другой хранитель.
Postgres может хранить лишь статистику TempDB хранить в другом месте.
При правильных настройках на базах выше 50Gb MSSQL выигрывает, если tempdb выведен на отдельный SDD Optane или Samsung 970 Pro. Если на RAM диск то себестоимость ERP считает раза 3 быстрее (при условии хороших камней CPU)
+
141. starik-2005 3036 27.04.19 20:21 Сейчас в теме
(140) кстати, tempdb в постгресе может быть перенесен хоть даже в память - через пространства таблиц. Но у меня гилевский тест что на ramfs, что на tempfs, что на диске - 83-86 кажет, т.е. практически не зависит ни от чего.
+
142. Indgo 364 29.04.19 10:19 Сейчас в теме
(141) Тест Гилева, этот тот что бесплатный? - платный получше. По мне так реальный тест - это расчет себестоимости на 300 ГБ базе.
+
143. starik-2005 3036 29.04.19 10:29 Сейчас в теме
(142)
По мне так реальный тест - это расчет себестоимости на 300 ГБ базе
А чем расчет себестоимости на базе в 300 Гиб отличается от расчета себестоимости на базе 20 Гиб? Все упирается не в размер базы, а в количество операций за месяц. Дальше чистой воды математика - извлечение исторических данных по себестоимости проданных товаров и либо РАУЗовский расчет по их "транспортной" задаче, либо выгребание партий и размазывание по ним допрасходов с разузлованием переделов. Это от размера базы зависит мало, а вот от количества документов выпещенной продукции и расходных зависит прямо пропорционально.
+
144. Indgo 364 29.04.19 11:04 Сейчас в теме
(143) Лучше бы рассказали как в Posgres временные тэйблы на отдельный диск перенести.
+
145. starik-2005 3036 29.04.19 11:10 Сейчас в теме
(144) http://renbuar.blogspot.com/2018/10/tmpfs-ramfs-1-linux-ubuntu.html?m=1
sudo nano /etc/postgresql/10/main/postgresql.conf

temp_tablespaces = 'ram'
Вот это как пример, а можно и не "ram", а другой тэйблспейс.
+
146. Indgo 364 29.04.19 13:47 Сейчас в теме
147. KilloN 56 01.07.19 14:58 Сейчас в теме
Спасибо за статью, но мой друг у себя на работе провел собственный батл, и результат не в пользу Слона!
Кто что думает?

https://habr.com/ru/post/457602/
+
148. a.doroshkevich 1411 01.07.19 15:54 Сейчас в теме
(147)
сибо за статью, но мой друг у себя на работе провел собственный батл, и результат не в пользу Слона!
Кто что думает?


удалил
+
149. a.doroshkevich 1411 01.07.19 16:06 Сейчас в теме
(148)Немного смягчу позицию)
Результаты теста крайне странные, настройки PG бы в студию.

очень странно что Выполнение процедуры «Закрытие месяца за декабрь 2018 г. у PG быстрее чем у MS, и при этом проведение ПТУ и РТУ медленнее....
И тут же все скриптовые данные дали одинаковый результат

Я не то чтобы в защиту PG (работаю и с MS Тоже много), но результаты очень странные.
+
151. KilloN 56 03.07.19 10:14 Сейчас в теме
(149)
Результаты теста крайне странные, настройки PG бы в студию


Добрый день. В статье если раскрыть "Детали" будет видны настройки Слона.
+
152. a.doroshkevich 1411 03.07.19 10:44 Сейчас в теме
(151)Да, спасибо.
я не увидел сначала, на хабре уже написал рекомендации
+
150. ansh15 01.07.19 18:08 Сейчас в теме
(147) Я еще понимаю, если бы результат теста Гилева в одном случае был бы 40, а в другом - 63-65. Но всерьез сравнивать 14,41 и 12,55( т.е. два заведомо плохих результата) и на этом основании делать вывод, что одна СУБД лучше лучше другой, для 1С, по крайней мере...
Почему-то конкретные модели процессоров предусмотрительно не указаны...
Gilev.Vyacheslav; +1
153. 2tvad 70 06.09.19 01:00 Сейчас в теме
Не понятно, в первых двух тестах, был ли установлен - online_analyze.enable = on, или его взвели перед 3 тестом?

И мне кажется, что имеет смысл сравнивать стоимость железа + ПО. Все же MSSQL дорогой продукт, и за эти деньги вполне можно купить более производительный сервер и разнести данные по разным дискам.
+
154. a.doroshkevich 1411 06.09.19 05:04 Сейчас в теме
(153)online_analyze.enable = on был установлен с самого начала


И мне кажется, что имеет смысл сравнивать стоимость железа + ПО. Все же MSSQL дорогой продукт, и за эти деньги вполне можно купить более производительный сервер и разнести данные по разным дискам.

Согласен, но тогда бы был тест финансовой эффективности СУБД, а не скорости работы с 1С
+
155. user1284652 08.10.19 11:43 Сейчас в теме
Переделывал по рекомендациям на хабре и еще на специальном форуме СУБД и в принципе все получилось, сейчас в antiplagiat.org наладилось и скорость и эффективность. остались какие то вопросы но тестировали и все вообщем устроило и нас и заказчика. По цене железо не самое дорогое получилось кстати
+
Внимание! Тема сдана в архив