Имя: Пароль:
1C
1С v8
Разбиение базы на две - использование УРБД - стОит ли ?
0 Neo58
 
21.11.25
08:23
Доброе утро всем. Есть база УТ 10, SQL, размер 120 Гигабайт (да, старьё, но пока в планах перехода на УТ 11 нет). Работает склад и продажники. Есть проблема блокировок при проведении документов (заказ покупателя, реализация). Планирую разбить базу на две,  и обмениваться, используя механизм УРБД (да, понимаю, старая штука). Обмен делать по ночам, днём по минимуму. Делал ли кто так именно с целью ухода от блокировок и получилось ли это?
1 maxab72
 
21.11.25
08:33
какого рода блокировки? Причина известна? RLS включен?
2 evorle145
 
21.11.25
08:35
(0) то есть чтобы избавиться от блокировок нужно единую базу разбить на n-независимых... И каждая будет видеть остатки актуальные на вчерашний день.. так, а почему у вас n равно 2? не 4 или 7, например?

p.s. идите к начальству и выбивайте себе помощника. Вы станете руководителем отдела, помощник будет за 100 колов в месяц контролировать обмены.
3 Neo58
 
21.11.25
08:35
RLS выключен. Блокировки такого плана. Причина не известна.
4 maxab72
 
21.11.25
08:46
(3) Понятно. Так как УТ10 более не поддерживается, можете ее курочить как хотите. Перенесите все модули проведения проблемных документов в общий привилегированный модуль и проводите под полными правами. РЛС для проведения довольно громоздка и много лишнего ограничивает. 120 ГБ это мизер, вот когда переползете за 500 начинайте думать.
5 Neo58
 
21.11.25
09:20
Уважаемый maxab72, т.е. Вы тоже советуете не связываться с разбиением базы?
6 maxab72
 
21.11.25
08:48
P.S. туда же перенесите все процедуры ПередЗаписью и ПриЗаписи. Увидите, как все начнет быстро работать.
7 maxab72
 
21.11.25
08:49
(5) Крайне не рекомендую.
Если вы только не мазохист в третьем поколении.
8 Климов Сергей
 
21.11.25
09:00
(3) Я бы посмотрел, что там творится в регистре. Может там висит 100500 миллионов остатков (несуществующих в реале) и запрос тупо долго их обрабатывает. Видел такое.
И да, УРБД - это последнее, о чём бы я думал в данном случае.
9 d4rkmesa
 
21.11.25
09:02
(3) Так это не решается. Надо гайды читать по взаимоблокировкам в автоматическом режиме, на ИТС даже кое-что есть:
https://its.1c.ru/db/metod8dev/content/4051/hdoc
В целом, вы же дошли до проблемного запроса, посмотрите, что там, есть ли правки типового кода. Регламенты на SQL настроены же?
Также, бывает что народ перевод старые конфы на упр. блокировки.
10 zva
 
21.11.25
09:04
(0) "Блокировки такого плана. Причина не известна."
Кто же это мог сделать? Создать свои формы документов и написать код, который вызывает взаимоблокировки с типовым функционалом...
11 ОператорПК
 
21.11.25
09:05
(0) есть контора, называется Софтпоинт, за сумму в пределах сотки руб. в год, умеет бороться с блокировками. Проверено на УПП.
12 evorle145
 
21.11.25
09:15
(11) ну это дорого.. лучше держать в штате специалиста, который директору единую базу разобьет на 2 ))))
второй раз, можно будет усмехнуться, когда это не поможет)) и проблема останется на прежнем месте)

а уж потом до директора начнет что-то доходить.. наверное...
13 АгентБезопасной Нацио
 
21.11.25
09:17
(10) есть такие злодеи - "хацкеры" - которые пробираются тёмными ночами в базы и конфигурации, и изменяют их, изменяют, изменяют....
(11) им не софтпойнт, им просто программист нужен...
14 ОператорПК
 
21.11.25
09:17
(12) нет, вы ошибаетесь с УРБД проблема усугубится а не останется на том же месте, обмены = вечные тормоза. Это вам не это (с).
15 АгентБезопасной Нацио
 
21.11.25
09:18
(12) "ускорение работы базы методом половиннного деления"©
16 Alexor
 
21.11.25
09:19
(0) для начала посмотрел бы что 10 самых больших таблиц
17 Alexor
 
21.11.25
09:20
(0) пользаков сколько?
18 maxab72
 
21.11.25
09:21
(15) это примерно так.
Дано: болит голова
Решение: забить себе в колено гвоздь, тогда проблема головы уйдет на второй план.
19 evorle145
 
21.11.25
09:21
(14) (15) так я еще (2) пытался включить мозг в работу вопросов, почему он решил что надо делить именно на 2, а не больше) Правильный ответ на этот вопрос уже бы заставил автора задуматься над вредностью своей идеи) ... 11 лет стажа на форуме... эх...
20 Neo58
 
21.11.25
09:25
Пользователей 80
21 АгентБезопасной Нацио
 
21.11.25
09:27
(19)  "пытался включить мозг в работу вопросов" - хм....
22 Волшебник
 
21.11.25
09:28
(0) Когда это сделаете, то блокировки будут возникать в обеих базах. Была одна проблема, станет две.
23 Neo58
 
21.11.25
09:32
(22) Спасибо, я понял, по этому пути не пойду.
24 Timon1405
 
21.11.25
10:44
25 d4rkmesa
 
21.11.25
11:03
(24) Хмм, а в УТ10 нет рудиментов управляемого режима, как в УПП?
26 d4rkmesa
 
21.11.25
11:07
(23) Можно попробовать "подглянуть" в УПП и сделать аналогично, по идее там как раз в запросах по свободным остаткам расставили управляемых блокировок.
27 Eiffil123
 
21.11.25
11:39
(3) наймите компанию, которая расследует блокировки. это не какие-то колоссальные деньги. пусть скажут чего вам не хватает.
28 shuhard
 
21.11.25
11:48
(25) нет
29 АгентБезопасной Нацио
 
21.11.25
11:51
(27) "пусть скажут чего вам не хватает." - а разве непонятно? (можно, я не стану "Простоквашино" лишний раз цитировать?)
30 zva
 
21.11.25
12:02
(23) Идите по этому пути, либо пригласите специалиста, который перепишет запросы без взаимоблокировок.
https://its.1c.ru/db/metod8dev/content/6006/hdoc
31 Winnie Buh
 
гуру
21.11.25
12:50
(0) а что только на две базы?
разбейте сразу на 80, пусть каждый юзер в отдельной базе работает
32 Serg_1960
 
21.11.25
13:34
PS:
[не совсем в тему]
В распределенных базах есть своя "специфика" и имя ей - "конфликт изменений объектов в распределённой информационной базе". Надо заранее "распределить" по узлам виды объекты по праву внесения изменений, а если объекты одного вида могут и будут изменяться в двух и более узлах - то необходимо установить правила (последовательность действий), призванных уменьшить вероятность возникновения конфликта изменений.

Не стоит множить сущности - ради вероятности ухода от блокировок получать вероятность конфликта изменений.
33 АгентБезопасной Нацио
 
21.11.25
13:35
(31) не. делать - так делать!. сделать иерархическую структуру баз. данные из каждых 2 баз из 80 пользовательских объединяются по урбд в 40 баз первого уровня. Из каждых 2 баз  первого уровня - соответсвенно в 20 баз второго... красота же!
2 + 2 = 3.9999999999999999999999999999999...