Имя: Пароль:
IT
1С v8
Отдельный постгрес грузит только одно ядро
,
0 alex_ak1
 
24.08.22
09:43
Здравствуйте.
Поставил убунту 20 и на нее постгрес 11 от 1с. 1с сервер стоит на отдельной машине.
Все работает, но с ДИКИМИ тормозами, потому что htop показывает, что постгрес занял только одно ядро (из 40).
Как заставить его работать сразу в пределах одной сессии и процесса на большем количестве ядер?
54 СеменовСемен
 
25.08.22
11:29
У 1с во фреше постгре и ниче работает
55 Chai Nic
 
25.08.22
11:33
(53) Именно проц. Характерная для нестедлуп нагрузка - периодические пики на 100% загрузки одного ядра.
(54) А я и не говорю, что его нельзя настроить чтобы нормально работал. Суть в том, к постгресу должны прилагаться специалисты, способные провести тонкую настройку под конкретное аппаратно-программное окружение, с учетом характерной нагрузки. Там искусственный интеллект чаще вредит, чем помогает.
56 DEVIce
 
25.08.22
11:33
У 1Са есть вот такое в неисправленных ошибках: "При использовании СУБД POSTGRESQL при выполнении запросов с использованием IN наблюдается низкая производительность и повышенная нагрузка на оборудование из-за неоптимального плана запроса."
57 DEVIce
 
25.08.22
11:34
+(56) Исправили в тестовой 8.3.22.
58 alex_ak1
 
25.08.22
11:53
(50) Нене, чистая убунта 20.04. Сервер hp dl160 g8, raid на основе smart array p420. Тесты прямой записи показывают скорость около 700 метров в секунду (на 2 секунды).

А можете скинуть конфиг вашего постгреса? Если не секретный секрет, конечно.
59 alex_ak1
 
25.08.22
11:53
(57) Я не могу скачать тестовую 8.3.22 :(
60 Fram
 
25.08.22
12:19
(58) Что то очень древнее. Просто из любопытства гилевских попугаев сколько выдает?
61 alex_ak1
 
25.08.22
13:44
(60) Я брал 11 версию, чтобы подходила под платформу 8.3.17.1852. В целом я уже отчаялся, может поставить 14 версию. И платформу обновить
62 zaki
 
25.08.22
13:44
(60) Данный тест не о чем лучше использовать тогда многопоточный тест производительности 1С fragster https://fragster.ru/
63 zaki
 
25.08.22
13:46
(61) У меня 8.3.17 работает на PostgrePro 14.4
64 Fram
 
25.08.22
13:46
(61) я про hp dl160 g8. Ему же 7-8 лет уже
65 alex_ak1
 
25.08.22
13:59
(64) А, это. Ну и постгресу в целом то тоже не 2 месяца :) Диски там новые, памяти и процов много. Не вижу особо, зачем нужен новый сервер, если есть такой.
66 ansh15
 
25.08.22
16:11
(47) 8.3.20 и 14.4 от 1С вполне неплохо.
Конфигурация, которая дико тормозит, какая? Обычные формы на автоматических блокировках с массой переписанного кода под MS SQL?

Для выяснения что тормозит, все тесты хороши. И Гилева, и Fragster-a и pgbench...

lscpu какую модель процессора показывает?
67 Fram
 
26.08.22
01:12
(65) Действительно, зачем!
А проц небось 1.8 ГГц на ядро? И диски наверное не ссд?
68 Fram
 
26.08.22
01:20
(38) а на других движках бд такое есть?
69 ДедМорроз
 
26.08.22
01:51
Создать несколько фоновых заданий,в каждом запросами что-то повыбирать и посмотреть,сколько будет занято ядер - по идее - должно быть столько,сколько фоновых.
Если это не так,то копать настройки,если это так,то про проблемы СУБД забыть.
Распараллеливание запросов - это очень сложный механизм,который чаще всего дает проигрыш по общей производительности.
Опять же,тормоза и т.п.стоит оценивать в каких-то более разумных тестах,т.к.некоторые старые конфигурации,в принципе,не жильцы.
70 SunFox
 
26.08.22
10:24
RAID 5 - сильно тормозной для СУБД не годиться, посмотрите какая длина очереди диска.
71 SunFox
 
26.08.22
10:27
Прогоните тест Гилева - он даст информацию по работе дисковой подистемы.
72 SunFox
 
26.08.22
10:27
Диски хлам
73 SunFox
 
26.08.22
10:28
если не SSD
74 mistеr
 
26.08.22
11:58
(38) Не каждый запрос имеет смысл распараллеливать. Какой это отчет?
75 alex_ak1
 
26.08.22
13:38
(68) Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz 2 штуки
Дисковое линейное чтение - 700 мегабайт в секунду. Нагрузки на диск нет когда проц сожран. ЧИтается несколько мегабайт и все.
Другие движки не пробовал, но попробовал поставить 11 постгрес на винду на соседнем компе - тормоза точно такие-же. mssql работает хорошо.
76 alex_ak1
 
26.08.22
13:39
(74) Открыть список заказов (5 секунд и больше) - открыть заказ (еще 5 секунд) - открыть еще заказ (еще 5 секунд). Имеется в виду после нажатия на мышку и до открытия живого окошка.
77 СеменовСемен
 
26.08.22
14:12
(75) нужно не линейное чтение, а мин блоками. Обычно оно на хдд на порядки меньше
78 alex_ak1
 
26.08.22
14:21
(77) Ну это понятно, но не нашел встроенной утилиты, чтоб прогнать такой тест.
Опять-же - судя по нагрузке на диск через iotop - не он узкое место.
79 b_ru
 
26.08.22
17:16
(76) То есть тебе хотелось бы, чтобы список заказов у тебя в несколько потоков открывался? Никак такое невозможно. Тупо доисторический сервер с бабушкиным винчестером тормозит при работе, что вполне для него естественно.
80 Chai Nic
 
27.08.22
17:31
Почему-то все на дисковую подсистему думают, а причина вовсе не в ней, как правило. Всё, что надо, уже тыщу раз закешировано. И тормоза в данном случае возможны в двух местах - или при обработке данных сервером БД, или при обработке данных сервером 1с. И в этом случае узкое место - процессор. Однако, вовсе не из-за слабого процессора эти тормоза, а из-за того, что соответствующие программные модули выполняют неоптимальные алгоритмы..
81 alex_ak1
 
29.08.22
11:29
(79) Чем отличается новомодный сервер купленный, за миллион сегодня от сервера, купленного 5 лет назад?
На оба ставим одинаковый линукс, одинаковый постгрес.
82 alex_ak1
 
29.08.22
11:30
(79) Более того - я проверял дисковую подсистему. Она быстрая, на нее работы нет при работе постгреса. Чтение десятка мегабайт в течении секунды не дает никаких тормозов, даже при одном обычном хдд, а там стоит рейд5 на 6 дисков.
83 Chai Nic
 
29.08.22
11:47
(82) "там стоит рейд5 на 6 дисков"
Безотносительно сабжа. Не очень вариант. Лучше если есть время и места хватает, переразбить в raid10.
84 alex_ak1
 
29.08.22
16:17
(83) Я не вижу тут разницы между "дешманский вд купленный с рук", рейд 10 или рейд 5 с на 6 дисков сас (как у меня). Все они при нормальной работе обеспечивают скорость больше 50 мегабайт в секунду. А тут такой нагрузки нет, отсюда и вывод, что это не важно. Потом, когда одновременно 10 бухов будут полностью перепроводить базу весом в 10 гигов документов, тогда и будем думать, а сейчас в этом проблемы нет. Затык именно в однопоточности постгреса
85 arsik
 
гуру
29.08.22
16:46
(84) Да нет там никакой проблемы в однопоточности. Не даст тебе многопоточность такой прибавки какой ты ждешь. При многопоточности время на разбиение и потом синхронизацию результатов уходит. Ну будет при много потоке у тебя +5%, а возможно и -5%. Не там ты копаешь.
86 СеменовСемен
 
29.08.22
17:35
многопоточность дает выигрыш когда нужно тэйбл скан делать большой таблицы
87 СеменовСемен
 
29.08.22
17:36
но запросы с тэйбл скан сами по себе тормозные
88 alex_ak1
 
30.08.22
11:53
(85) Ну если эту же базу присоединить с этим же сервером присоединить к mssql, то внезапно она наченает бодро бегать, а еще загружены много ядер, а не одно. Собственно вопрос - в чем отличие потсгреса от mssql? Очевидно в многопоточности.
89 СеменовСемен
 
30.08.22
11:55
а что за база? типовая? может там запросы, которые постгре не по силам?
из типовых долго выпиливали такое
90 ansh15
 
30.08.22
12:10
(88) >>в чем отличие потсгреса от mssql? Очевидно в многопоточности
Это легко проверяется. В MS SQL принудительно запрещается многопоточность, 1С когда-то рекомендовала для улучшения работы.
Должно начать работать все плохо.
91 СеменовСемен
 
30.08.22
12:12
мсскл и потсгре отличается ... всем, а не только многопоточностью
92 Hmster
 
30.08.22
12:51
видел как УТ10 переставили с МС на постгре. У части пользователей стали наблюдаться тормоза. Выяснили что тормозит из-за РЛС. Добавили индексацию в конфигураторе нужным объектам и всё залетало
93 СеменовСемен
 
30.08.22
12:54
рлс на постгре только производительный работает.
для этого его и писали
94 mistеr
 
30.08.22
13:23
(88) Ну прям как тот анекдот про Чапаева, Петьку и таракана.
95 mistеr
 
30.08.22
13:25
(76) Тут многопоточность не поможет. Скорее всего нужно настроить Постгрес.

В этом и есть главное отличие от MSSQL. Чтобы успешно эксплуатировать Постгрес, нужно в нем разбираться.
96 ZDenis
 
30.08.22
13:26
(92,93) В далекие времена, когда только появился 1С Документооброт и в него включили РЛС, то постгри умер от слова совсем. Все открывалось по 5 минут. Пришлось всем установить полные права, пока не купили МС. И на МС все залетало. Теперь любой постгри я обхожу стороной.
97 mistеr
 
30.08.22
13:30
(96) А прикинь, в еще более далекие времена, самые первые SQL версии сливали DBF. По твоей логике нужно обходить SQL стороной.
98 ZDenis
 
30.08.22
13:39
(97) Куда они их сливали?
99 Chai Nic
 
30.08.22
13:40
Я же говорил уже, причина не в многопоточности, а в нестедлупах по большим таблицах, которые почему-то оптимизатор постгреса считает маленькими. Оптимист блин.
100 СеменовСемен
 
30.08.22
13:40
(96) раньше - да, но времена то меняются
101 ZDenis
 
30.08.22
13:48
(100) Времена меняются, а осадок остался. На МС и сейчас все летает, РЛС визуально на скорость открытия форм не влияет совсем. Поэтому смысла с экспериментами по возвращению на постгри вообще не вижу. Быстрее мгновенного он все равно не откроет.
102 zaki
 
30.08.22
15:31
(0) Приведи тесты: "pgbench -v -p 5432 -c 10 -j 10 -t 10000 base"
предварительно создай базу base и наполни ее "pgbench -p 5532 -i -s 500 base"
103 СеменовСемен
 
30.08.22
15:47
(100) на постгре переходят не потому что он лучше, а потому что он дешевле
104 Chai Nic
 
30.08.22
16:34
(101) ИМХО, пока в постгресе радикально не перепишут ядро, толку не будет. Самая главная проблема там - со сбором статистики в неявных временных таблицах, используемых при "селект фром селект". Эта статистика просто отсутствует, потому что запрос компилируется в самом начале, пока о фактических данных в этих временных таблицах ничего не известно. Поэтому "оптимистичный оптимизатор" предполагает, что они очень маленькие, и по ним можно эффективно гонять нестедлупы. Модуль "онлайн анализ" слегка решил проблему с _явными_ временными таблицами, но не с неявными..
105 Святофор
 
30.08.22
16:54
а создание архивов они починили? помню была проблема - некорректный дамп базы после определенного объема на постгри
106 kittystark
 
30.08.22
17:08
(0) вместо 11 ставь 13-й Pro - прирост будет

сейчас новый сервак по-всякому крутим, тестим
11-й сливает 13-му и под виндой и под линухами всякими, со стандартными настройками

а еще и конфиг подправили у 13-го, так получили разлет показателей минимум в 30%,
в некоторых тяжелых отчетах - время формирования отличается В НЕСКОЛЬКО РАЗ
107 zaki
 
30.08.22
17:11
(105) Сама 1С починила в платформе, стала разбивать на кусочки, не смотрел с какой версии но на 8.3.17 работает
108 Святофор
 
30.08.22
17:12
(107) причем здесь 1с
109 zaki
 
30.08.22
17:14
(108) проблема была в том что в таблице config был элемент больше 1 гиг и он не выгружался нормально я об этом...
110 Святофор
 
30.08.22
17:17
(109) ааа, спасибо. т.е. тулзы постгри все равно кривые
111 ansh15
 
30.08.22
19:16
(107) Как-то смотрел старые архивы, в 8.3.5 уже было.
(110) Есть pg_dumpbinary. Правда, только для Linux.
112 ansh15
 
30.08.22
19:26
(104) В мире PostgreSQL, видимо считают, что подобный подход достаточно неплох и просто предложат писать запросы и трансляторы из других сред более "оптимистично", а не разводить тягомотину из множества вложенных select и т.п.
113 Chai Nic
 
30.08.22
19:41
Мне вот жалко, что 1с не работает с СУБД Firebird/Interbase. Легкая, мощная, удобная СУБД. Да, со своими тараканами типа однонаправленных индексов и ограничений на количество изменений структуры таблицы - но всё это легко можно обойти на уровне платформы 1с. А они почему-то чрезмерно усложненный и вечно сырой постгрес выбрали как альтернативу микрософту..
114 PR
 
30.08.22
19:51
(113) 1. Почему Постгрес чрезмерно усложненный и вечно сырой?
2. Почему Firebird/Interbase легкая, мощная и удобная? И подходящая ли она для 1С?
3. Не напомнишь, в какой стране разрабатываются Firebird/Interbase и в какой Постгрес?
115 СеменовСемен
 
30.08.22
20:09
(113) и что фаерберд прожует запросы 1снве километровые?
116 Chai Nic
 
30.08.22
20:29
(114) А что не так со странами? Интернациональная команда в обоих случаях. Русские и там и там есть. Вообще в России программисты традиционно к продуктам от борланда относятся с уважением.
Да и для конечного пользователя фб приятнее, одна база - один файл, никаких там кластеров с сотнями тысяч каталогов и файлов. Переносить, копировать базу fb/ib не сложнее чем в случае файловой базы. В отличие от постгреса, где в кластере потеряешься.
(115) Почему бы и нет?
117 PR
 
30.08.22
21:08
(116) Я правильно понимаю, что по пунктам 1 и 2 ты ничего сказать не можешь, кроме своих очень ценных эмоций?
118 PR
 
30.08.22
21:09
(116) По поводу стран намекаю, раз ты сам не сообразил, разработчик Постгрес — российская компания, в которой работают не только россияне, разработчик Постгрес — НЕ российская компания, в которой работают не только россияне
Дальше сообразишь?
119 PR
 
30.08.22
21:13
(116) По поводу "программисты традиционно к продуктам от борланда относятся с уважением" в России много к каким IT-компаниям относятся/относились с уважением, что не помешало этим компаниям на фоне антироссийской истерии выкинуть совершенно ублюдочный финт ушами, выделив Россию в отдельно взятую страну, которой запрещается пользоваться их продуктами
Ну и нахрена нам эти бесконечно уважаемые компании?
120 Krendel
 
30.08.22
21:14
(119) А борланд разве стал бесплатным? помню времена за рабочее место хотели 3-5к зеелнии
121 PR
 
30.08.22
21:20
(120) Вроде Файрберд бесплатный, это вроде как форк Интербейса, при этом сам Интербейс тоже развивается, если верить https://www.ibase.ru/ibfbfeature/
Не стал про это писать, потому что лень писать, почему MS при его платности выбрали, причем основной СУБД, а тут типа почему нельзя
122 alex_ak1
 
31.08.22
01:15
(102) Будет ли эффективно выводить отчет о результатах раз в 5523 секунд? Может срок поменьше поставить?
123 zaki
 
31.08.22
03:04
(122) 5523 это порт я ошибся в цифрах, нужно так
"pgbench -p 5432 -i -s 500 base"
порт можно не указывать тогда будет работать через unixsocks
124 Chai Nic
 
31.08.22
07:36
(117) Очень ценные эмоции были, когда надо было срочно поднять базу постгреса на другом сервере в связи с отказом исходного. Этот кластер с синтетическими именами каталогов и файлов, где не поймешь что к какой базе относится, ощущение кучи мусора какой-то. Студенческий курсовик для демонстрации способностей студентов, который почему-то приглянулся 1с как заменитель платного mssql..
125 СеменовСемен
 
31.08.22
09:28
(124) из всех бесплатных - это самая мощная баз
126 Chai Nic
 
31.08.22
09:50
(125) Вот только для массового сегмента нифига не подходящая. Ларьки, доросшие до клиент-сервера, не потянут поддержку и администрирование постгреса на нормальном уровне.
127 СеменовСемен
 
31.08.22
09:55
(126) так это и не для ларьков нужно было. сама 1с например на постгре сидит во фреше
128 Chai Nic
 
31.08.22
09:57
(127) Ларьки воспринимают постгрес как возможность сэкономить вместо покупки mssql. Альтернативы по сути и нет, разве что бесплатная версия DB2, но в ней свои заморочки есть.
129 b_ru
 
31.08.22
09:58
(118) Вообще это не правда. Разработчик Постгрес - это международное коммунити. Да, русская Postgres Professional вносит большой вклад, но без самого Постгресса они никто. Постгрес настолько же русский, насколько Firebird.
130 СеменовСемен
 
31.08.22
10:03
(128) ну сейчас уже вполне можно и ларьку. А у ТС наверняка РЛС старой версии
131 alex_ak1
 
31.08.22
10:14
(130) Извините за глупый вопрос, но что такое РЛС?
132 Chai Nic
 
31.08.22
10:28
(131) Row Level Security - функция в платформе 1с, когда к запросом на получения данных прицепляется некий подзапрос, ограничивающий доступ к данным в зависимости от прав пользователя.
133 mistеr
 
31.08.22
10:40
(124) Как витиевато ты сказал "не осилил". Талант!
134 mistеr
 
31.08.22
10:41
(128) Альтернатива сейчас это бесплатная версия MSSQL. Заморочек почти нет.
135 СеменовСемен
 
31.08.22
10:54
(134) пиратская (зачеркнуто) параллельно импортная ты хотел сказать
136 Chai Nic
 
31.08.22
11:02
(134) Это вы про экспресс? Там ограничение на размер базы в 10 гигов. У людей и файловая больше бывает.
137 mistеr
 
31.08.22
11:06
(136) Если больше, значит пора выходить из "ларьков" и платить. Либо за лицензию MSSQL, либо Postgres админу.
138 Kassern
 
31.08.22
11:09
(137) в любом случае, еще 1ске забашлять, за серверную лицензию сверху)
139 mistеr
 
31.08.22
11:11
(138) За нее уже заплатили раньше, когда перешли с файловой на Express.
140 Святофор
 
31.08.22
11:37
(126) >Вот только для массового сегмента нифига не подходящая. Ларьки, доросшие до клиент-сервера, не потянут поддержку и администрирование постгреса на нормальном уровне.

можно было купить "форк" какой-нибудь версии постгри и довести ее до ума при помощи напильника и такой-то матери

выкинуть файловую вообще, продавать только клиент-сервер на этой доработанной вменяемой версии постгри. кому нужна файловая - фреш, облака и прочие saas-ы
141 Kassern
 
31.08.22
11:41
(140) а как же быть с (138) ?) Всем желающим ознакомиться с 1с ее продавать за 80к, или сколько она сейчас стоит? Если у вас ТТ с одним рабочим местом, на кой там скульная версия? Да и облако может не подойти, например, косяк с инетом, а нужно инвентаризацию делать, да и смысл от этой абоненки, когда можно сэкономить, воткнув файловую версию?
142 mistеr
 
31.08.22
11:47
(140) >можно было купить "форк" какой-нибудь версии постгри и довести ее до ума при помощи напильника и такой-то матери

Наивное заблуждение. Чтобы довести постгрю до уровня самообслуживания MSSQL, нужно вложить столько же человеко-часов, сколько вложила Microsoft. И даже больше, т.к. нужно поддерживать не одну ОС.

Все что можно было довести "малой кровью", они уже довели с Перконой. Эта версия скачивается с сайта 1С.
143 Святофор
 
31.08.22
11:47
(141) одно рабочее место - велком ту облако

поддержка нищебродов через файловые костыли съедает слишком много ресурсов
144 СеменовСемен
 
31.08.22
11:48
(143) а кто ларьки с базовыми будет окучивать?
145 Святофор
 
31.08.22
11:49
>Все что можно было довести "малой кровью", они уже довели с Перконой. Эта версия скачивается с сайта 1С.

так она с точки обслуживания и администрирование такое же уг как обычный постгри
146 Святофор
 
31.08.22
11:49
(144) гребцы из франчевых галерных бараков
147 СеменовСемен
 
31.08.22
11:49
(142) постгре нельзя довести до уровня мсскл. ибо там разный подход.
мсскл - это ОС внутри ОС. а постгре таки опирается на механизмы ос
148 Святофор
 
31.08.22
11:54
>Чтобы довести постгрю до уровня самообслуживания MSSQL, нужно вложить столько же человеко-часов, сколько вложила Microsoft.

извините, нифига не верю. ms потратило основные человеко-часы на конкуренцию с ораклом - версионник, сегментация, кластеризация и прочие ништяки

я про банальное - нормальный сетап с адекватными настройками из коробки, вменяемые тулзы для администрирования, документация... я не про корпоративные прибамбасы сейчас
149 Chai Nic
 
31.08.22
11:55
(147) Постгрес тормозит не поэтому. А я уже писал почему. Потому что студентам и их преподавателям пофиг на реальные профили нагрузки, они делали сферическую СУБД для некого идеального тестового профиля. Когда разработчики вдумчиво рисуют SQL-запросы ручками, а не когда некая система формирует их автоматически по метаданным, без учета особенностей СУБД.
150 Chai Nic
 
31.08.22
11:56
(148) В последних версиях постгреса даже вменяемый pgadmin выкинули, вместо него какое-то джавовское убожище надо скачивать отдельно.
151 СеменовСемен
 
31.08.22
11:58
(149) ну так проблема 1с в том что она "формирует их .. без учета особенностей СУБД"
152 mistеr
 
31.08.22
11:59
(148) К документации-то какие претензии? Документация на уровне имхо.
153 arsik
 
гуру
31.08.22
12:01
(149) О каких студентах ты говоришь? Постгре уже давно пилят другие люди.
(150) Ну так и в MSSQL консоль отдельно ставится.
(151) Да вроде последнее время, в релизах, оптимизации всякие к постгре описаны. Так что работают в этом плане.