|
Удаление объектов после свертки | ☑ | ||
---|---|---|---|---|
0
Wefast
20.12.19
✎
10:27
|
УТ 11.4
Свернул, появилось куча помеченных на удаление объектов. Запускаю штатное удаление помеченных на удаление объектов, пишет 600к объектов. Что то удаляет уже вторые сутки. Все замедлилось, при этом пишет что обработано 100к, но 80к не удалось удалить. Даже если дождусь окончания и что то удалить - то что осталось обрабатывать заново - это займет кучу времени. Как вообще в подобных случаях избавляются от всего этого не нужного на больших базах? Есть что то вроде - все документы которых нет в вводе начальных остатков - удалить и все что с ними связано тоже. Без лишних проверок. |
|||
1
ДенисЧ
20.12.19
✎
10:32
|
Напиши обработку удаления, которая выбирает удалённые порциями.
|
|||
2
Cyberhawk
20.12.19
✎
10:35
|
ИР
|
|||
3
Cyberhawk
20.12.19
✎
10:35
|
Но вообще то что после свертки регистра можно будет многое удалить, якобы высвободившегося - это влажные мечты
|
|||
4
Wefast
20.12.19
✎
12:25
|
В голову тут пришла мысль.
Есть взять пустую ИБ, и обработкой переноса данных между идентичными базами, выбрать все константы, все справочники и только документы ввода начальных остатков и поставить галочки что бы переносились связанные документы |
|||
5
Double_Medved
20.12.19
✎
12:32
|
Отсутствие проверок может привести к ситуации "Алло программисты? Что это у меня за "Объект не найден 79b22f9c-22ea-11ea-9c8a-a4bf0117f3ce""???
Это произойдет с вероятностью 50% Либо произойдет, либо нет |
|||
6
Dmitrii
гуру
20.12.19
✎
12:35
|
>> Как вообще в подобных случаях избавляются от всего этого не нужного на больших базах?
А никто подобной ерундой не страдает. Свёртка баз - в 95% случаев - это не более чем фетиш программистов, доставляющий только головную боль пользователям. Основанный на мифах о том, что база уменьшится в размерах и ускорится. В тех оставшихся 5% случаев, когда свёртка реально необходима, над вопросом удаления ненужных объектов думают заранее. Способов решения несколько и зависят они от конкретных условий и видов объектов. |
|||
7
1ctube
20.12.19
✎
13:43
|
(6) Получается свёртка по большему счёту не нужна? Например оставшиеся 5% процентов случаев когда она нужна, это какие случаи? Просто интересно для развития)
|
|||
8
Dmitrii
гуру
20.12.19
✎
14:19
|
(7) >> оставшиеся 5% процентов случаев когда она нужна.
Особенности учёта. Например, вы торгуете какой-то одноразовой номенклатурой в огромных объёмах (сотни тысяч продаж ежемесячно). В результате в базе справочники Номенклатура и Контрагенты быстро наполняются информацией, которая используется один единственный раз. Фактически - одноразовым мусором. В таком случае свёртка действительно заметно уменьшит базу. Пересмотр методик(и) учета. Иногда полный пересмотр нормативно-справочной базы (статьи затрат, доходов/расходов, способов расчета затрат и себестоимости) приводит к несовместимости старых данных с новыми. Проще свернуть базу, откорректировать сформировавшиеся остатки и удалить все старые данные. В эту же историю можно отнести запущенные случаи накопления в базе неразгребаемого бардака. Кривые остатки, которые нереально выровнять вручную. Тогда свёртку совмещают с полной инвентаризацией всего и вся (торговых точек, склада, взаиморасчетов, НЗП, ОС и НМА и пр. и пр.). Результат свёртки в таком случае - это аналог ввода начальных остатков. Начинают учёт с чистого листа. Действительно большая база. Это вообще крайне редкий случай. Буквально доли процента. База ведётся более 5 лет. Сворачивать данные за период менее трёх лет нельзя. Т.к. данные за последние три года нужны для бухгалтерии, на случай корректировок, менеджерам для аналитики динамики показателей (в сравнении с прошлыми периодами). Делается свёртка только в случаях, когда база реально огромная (близко к 1ТБ и более) и сворачиваемый период действительно достаточно большой (несколько лет) и ожидаемый результат будет действительно заметен. В остальном надо понимать, что если вы вели учет, например, 4 года и сворачиваете базу за 2 года, это вовсе не означает, что база сократиться на 50% (в 2 раза). В самом лучшем случае сокращение размеров будет ~20-25%%. Да и то, если вы сделаете свёртку грамотно, применяя интеллектуальный подход с последующей полуручной чисткой того, что не удалилось удалить, а так же того, что вообще не пометилось на удаление (например, более не используемые элементы справочников на удаление свёрткой не помечаются). А такой результат не даст никакого заметного прироста производительности. Но зато свёртка - это всегда головная боль для менеджеров и бухгалтеров, которые должны будут сверить входящие остатки на всей площади учета - и складские остатки, и взаиморасчеты, и НДС, и производство и т.д. и т.д. |
|||
9
Злопчинский
20.12.19
✎
15:27
|
размеры справочников мало влияют на производительность. а вот когда в регистрах трэш и угар и в запросе\итогах вместо 5К строк вытягивается 80К строк, которые потом еще что-нить обрабатываются - уже веселее.
. но, в общем, свертку я бы вообще никогда не делал... если есть такая возможность |
|||
10
timurhv
20.12.19
✎
15:36
|
(0)
Надо все случаи анализировать. УТ не знаю. В бухгалтерии в актах сверки допустим есть 2 поля с документом-ссылкой в табличной части и строковым представлением. Акты сверки на 01.01.2019 содержат в себе документы за весь 2018 год, которые уже помечены на удаление. Необходимо заполнить строковое представление и очистить реквизит с ссылочным типом. После этого 60% документов отпускало и они удалялись. |
|||
11
Kigo_Kigo
20.12.19
✎
16:24
|
(9) Свертку не надо делать когда в базе порядок, а вот что бы навести порядок, делют сверку чтобы все барахло вычестить, с Ут я всегда поступаю так, делаю обычно сторонней обработкой ввод остатков по регистрам, далее безвозвратно удалаяю все доки и все что помечено на удаление(спр), и делаю ТиИ с зачисткой ссылок, делать это надо до без болезнненого периода, к примеру начало прошлого года, далее оператору правят доки ввода остатков приводя их в соотвествие ( удаляют минуса, прявят количество и себестоимость), как то так, для 99% моих случаев - это были очень приемлимые для заказчиков варианты, ну как вишенка на торте полная инветаризация на текущий момент
|
|||
12
Dmitrii
гуру
20.12.19
✎
16:25
|
(9) Ну да, как-то так. Просто пытался подробно расписать возможные вариант.
А размеры справочников имеют значение, когда элементы этих справочников являются ключевыми измерениями регистров. Например, когда в реальном текущем обороте компании используется несколько сотен номенклатур, а справочник Номенклатура при этом состоит из нескольких миллионов элементов, накопленных за несколько лет учёта, это не может не сказаться на производительности. Даже если сами регистры закрываются корректно. |
|||
13
Kigo_Kigo
20.12.19
✎
16:26
|
и да, все остальное что не касается УПР учета - пусть бухи в БП ведут(я про СФ, кассовую книгу и так далее)
|
|||
14
ДенисЧ
20.12.19
✎
16:26
|
(12) Если у меня в базе 10000000 записей в справочнике, а в регистре (во всём) есть ссылки только на 10 - никакого влияния на скорость это не окажет.
|
|||
15
Dmitrii
гуру
20.12.19
✎
16:32
|
(14) Так о том и речь, что в регистре ссылки на 10000000. Просто 9999990 из них в прошлых периодах, а только на 10 есть ссылки в текущем периоде.
Таблицы текущих итогов будут маленькими. Таблицы остальных итогов (помесячных) - больше, а таблицы оборотов будут огромными. Любые выборки из этих регистров, где тянется, например, представление номенклатуры и уж тем более прочие поля от номенклатуры, будут работать не так же быстро, как если бы в справочнике было только 10 элементов. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |