|
Чем чревата очистка РН средствами MSSQL? | ☑ | ||
---|---|---|---|---|
0
ReaLg
18.12.14
✎
16:27
|
Ситуация:
в довольно большой базе есть несколько регистров накопления, которые сейчас не используются, за их корректностью никто не следит, там, грубо говоря, мусор. С другой стороны, они разрослись так, что серьезно замедляют проведение некоторых документов. Есть обработка свертки, но на тестовом серваке она не успевает очистить регистр за отведенное время. Хочу очистить регистры средствами mssql. На тестовой базе все вроде бы получилось. Очистил таблицы регистров и итогов. На всякий случай пересчитал итоги из 1С. Регистры пустые, документы проводятся. Но терзают меня смутные сомненья - может быть я не догадываюсь о проблемах, которые могут возникнуть если очистить регистры скулем? Есть тут подводные камни? |
|||
1
H A D G E H O G s
18.12.14
✎
16:29
|
(0) "С другой стороны, они разрослись так, что серьезно замедляют проведение некоторых документов. "
Меряли? Как? |
|||
2
Лефмихалыч
18.12.14
✎
16:29
|
(0) откуда уверенность, что дело именно в этом регистре?
|
|||
3
ReaLg
18.12.14
✎
16:30
|
(1) На тестовой базе после очистки скорость проведения возрастает в 3 раза.
|
|||
4
Ёпрст
18.12.14
✎
16:30
|
(0) Есть только одна проблема - это ежели обе руки левые.
|
|||
5
ReaLg
18.12.14
✎
16:30
|
(1), (2)
Это партии. И отладчик показывает, что на запросе к ним 70 процентов времени тратится. |
|||
6
Ёпрст
18.12.14
✎
16:31
|
И.. раз их не используете, в коде следовало бы вырезать сперва место, которое толкает этот регистр
|
|||
7
Ёпрст
18.12.14
✎
16:31
|
(5) зачет, чего
|
|||
8
Ёпрст
18.12.14
✎
16:31
|
Режь..и.. беги оттуда.
|
|||
9
Жан Пердежон
18.12.14
✎
16:31
|
(0) вроде как нарушение лицензионного соглашения...
|
|||
10
ReaLg
18.12.14
✎
16:31
|
(4) В смысле грохнуть не ту табличку? :)
|
|||
11
Жан Пердежон
18.12.14
✎
16:32
|
(10) в смысле данные окажутся кому-то нужными
|
|||
12
Лефмихалыч
18.12.14
✎
16:32
|
Может просто итоги посчитать?..
|
|||
13
ReaLg
18.12.14
✎
16:32
|
(7), (8) то что они не используются - 100%.
Парти пересчитываются потом в другой конфе, из этой только выгрузка. |
|||
14
H A D G E H O G s
18.12.14
✎
16:32
|
(3) Ну так и пиши правильно:
"Запрос к ним в момент проведения серьезно влияет на быстродействие" |
|||
15
Ёпрст
18.12.14
✎
16:33
|
(13) тогда см. (6)
|
|||
16
Ник второй
18.12.14
✎
16:33
|
(10) Может быть и так. Я бы советовал средствами 1С, а именно по регистраторам в фоне пробегать и удалять записи. Такую операцию можно и при работающих пользователях выполнять.
И конечно закоментировать движение по этому регистру. |
|||
17
Defender77
18.12.14
✎
16:33
|
(0) Удаляй, ничего не случится
|
|||
18
Ник второй
18.12.14
✎
16:33
|
(17) Ты постоянно так делаешь? )
|
|||
19
ReaLg
18.12.14
✎
16:33
|
(12) Нереально по времени. Есть час-два на работы. Не успеют пересчитаться.
|
|||
20
Лефмихалыч
18.12.14
✎
16:34
|
короче, по сабжу, чтобы все было в ажуре, надо:
1. почистить не только саму табличку регистра, но и таблички итогов 2. переиндексировать 3. решить что-то с начальными остатками |
|||
21
Лефмихалыч
18.12.14
✎
16:35
|
(19) тогда берешь начальные остатки, выгружаешь в xml, поом трункате табле, потом загружаешь остатки, потом реиндекс
как-то так |
|||
22
palpetrovich
18.12.14
✎
16:35
|
(13) Комментируй проведение по партиям. А лучше, обходи его по какой-нить новой константе "ПроводитьПоПартиям"
|
|||
23
Defender77
18.12.14
✎
16:36
|
(18) Бывает. Чистил и живые регистры сведений. А тут неиспользуемые.
|
|||
24
Лефмихалыч
18.12.14
✎
16:36
|
но проблема не в том, что регистр большой
|
|||
25
ReaLg
18.12.14
✎
16:41
|
Вопрос, собственно, не в том, можно и нужно ли их очищать. Можно и нужно, это я уже обдумал и проверил. Вопрос в том, не получу ли я геморроя, очистив их скулем.
Ну, наподобие, почистив справочник получим объект не найден и тому подобное. |
|||
26
H A D G E H O G s
18.12.14
✎
16:42
|
(25) нет
|
|||
27
Гёдза
18.12.14
✎
16:49
|
как одновременно может быть: не используется и 70% времени на запросе к ним????
|
|||
28
Лефмихалыч
18.12.14
✎
16:49
|
(26) если не переиндексировать или/и не грохнуть итоги, то будет непонятное
|
|||
29
Гёдза
18.12.14
✎
16:57
|
Не проще ли отключить партионный учет вообще?
|
|||
30
Зеленый пень
18.12.14
✎
17:13
|
Может удалить эти регистры в конфигураторе?
|
|||
31
Ёпрст
18.12.14
✎
17:13
|
(30) и лопаттить потом всю конфу на предмет их использования в коде ?
Сомнительное удовольствие |
|||
32
Зеленый пень
18.12.14
✎
17:14
|
А большие базы (ходят слухи) только прямыми запросами и чистятся.
|
|||
33
Лефмихалыч
18.12.14
✎
17:14
|
(30) шлёпни себя линейкой по пальцам
|
|||
34
etc
18.12.14
✎
17:19
|
Пару раз чистил таким образом неимоверно большой регистр сведений. Правда для ускорения процесса я дропал таблицу целиком а потом воссоздавал. Главное индексы не забыть, что впрочем лечится реструктуризацией таблиц.
|
|||
35
Зеленый пень
18.12.14
✎
17:24
|
(33) Нет линейки рядом.
Да кто ж знает, что за конфа у него и сколько ссылок на эти регистры, может всего ничего. А регистры как метаданные потом из cf можно вернуть на место. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |