|
Как бороться с долгой реструктуризацией больших таблиц? | ☑ | ||
---|---|---|---|---|
0
RomaH
naïve
09.09.19
✎
07:12
|
Суть - база "долгая" и не подлежит свертке
медицинская в день до 1000 документов одного вида несколько тысяч записей в регистр конфигурация подлежит постоянному совершенствованию и вот добавил реквизит в документ - и при обновлении сидишь и смотришь на реструктуризацию таблицы в пару миллионов записей, а базе всего-то 10 лет какой выход может быть? |
|||
1
ДенисЧ
09.09.19
✎
07:23
|
Виселицу не предлагать?
|
|||
2
gSha
09.09.19
✎
07:38
|
Традиционно базы для медиков не делают на реляционных бд
|
|||
3
RomaH
naïve
09.09.19
✎
07:42
|
(2) обрадовал
|
|||
4
gSha
09.09.19
✎
07:44
|
Ну , купи корп версию - там вроде реструктуризация фоновая - хотя наверное все равно с блокировкой таблицы
|
|||
5
Trier
09.09.19
✎
07:47
|
(0) Как вариант - не добавлять реквизит в документ, добавить только поле на форму, писать его в отдельный регистр и при открытии формы восстанавливать это значение. База конечно распухнет, но дисковое место - вещь не слишком дорогая, а от реструктуризации и простоя базы уйдешь.
|
|||
6
rphosts
09.09.19
✎
07:51
|
(5) эти механизмы в типовых называется "Дополнительные реквизиты и сведения"
|
|||
7
gSha
09.09.19
✎
07:54
|
Там данные в объектах хранятся
|
|||
8
rphosts
09.09.19
✎
07:55
|
(7) сведения вроде-же ПВХ + РС
|
|||
9
gSha
09.09.19
✎
07:58
|
Да наверное действительно проще регистры сведений и потом бежать)) от воплей регистратуры. Поддерживать работу неподчиненых регистров ещё та забава ))
|
|||
10
Конструктор1С
09.09.19
✎
08:37
|
(0) "и смотришь на реструктуризацию таблицы в пару миллионов записей"
Там делов на пару минут |
|||
11
RomaH
naïve
09.09.19
✎
09:08
|
(10) на сегодняшний момент доходило до полу-часа
|
|||
12
neomarat
09.09.19
✎
09:31
|
Пол часа? Да вы шутите, эту сущие копейки. У меня обновления долге идут...
|
|||
13
ИУБиПовиц
09.09.19
✎
09:38
|
(11) А вы что каждый день добавляете реквизиты?. Раз в месяц запланируйте на час тех работы. Если такой возможности нет, то извращайтесь:) и потом отбивайтесь от регистратуры..
Понаделайте загодя реквизитов типа строка, при необходимости добавления нового реквизита используйте их, в строку пишите УИД, и со значениями через УИД работайте:) |
|||
14
Chum
09.09.19
✎
09:43
|
(11) полчаса? Раз в месяц остаться после окончания рабочего дня и выполнить все, что требуется с базой - такой вариант не рассматривается?
|
|||
15
RomaH
naïve
09.09.19
✎
09:45
|
(13) почему бы нет
у меня больше 10 видов документов одного типа (мед запись специалиста) сегодня в один добавил, завтра в другой |
|||
16
ptiz
09.09.19
✎
09:51
|
(0) Когда процесс будет занимать многие часы, тогда можно задуматься. А так - ночью точно можно час выделить. Вряд ли у вас работа 24/7.
|
|||
17
ИУБиПовиц
09.09.19
✎
09:56
|
(15) - сразу в рабочую что ли. лично у нас с начало в тесте доработки делаем пользователи тестируют, а в запланированиое окно - переносим доработки в рабочую базу.
|
|||
18
alkorolev
09.09.19
✎
10:01
|
(0) использовать новый механизм обновления
https://wonderland.v8.1c.ru/blog/optimizatsiya-restrukturizatsii-bazy-dannykh/ https://its.1c.ru/db/v8311doc#bookmark:adm:TI000000527 ну и стараться "доп.реквизиты" не изменять! |
|||
19
palsergeich
09.09.19
✎
10:04
|
Пара миллионов записей обновляетс пару минут.
Ок если это документы, то может пару десятков минут. |
|||
20
Smile 8D
09.09.19
✎
10:17
|
(11) У нас в центральной базе Астора в крупной продуктовой сети реструктуризация иногда за ночь не выполнялась или по памяти вылетала - приходилось делать средствами скуля для ускорения, а у вас пока совсем незначительные временные затраты.
В текущем варианте просто переносите обновления, требующие реструктуризации на нерабочее время. А вот когда времени перестанет хватать, будете искать уже другие решения (регистры сведений вместо реквизитов, реструктуризация средствами скуля и т.д.). |
|||
21
Вафель
09.09.19
✎
10:19
|
так платформа же корп есть для таких случаев
|
|||
22
Вафель
09.09.19
✎
10:20
|
корп делает ALTER TABLE - на порядки быстрее чем типовой механизм
|
|||
23
ansh15
09.09.19
✎
11:02
|
КОРП сейчас - сверхдорогостоящая роскошь.
"Продление срока действия РКЛ для возможности использования лицензий 1С КОРП Для получения права на обновления версий платформы "1С:Предприятие 8 КОРП" и ИСПОЛЬЗОВАНИЕ, необходимо приобрести Расширенную Корпоративную Лицензию (РКЛ), ежегодный платеж за которую составит 15% от рекомендованной розничной стоимости всех лицензий уровня 1С:Предприятие 8 КОРП (серверных + клиентских) по действующему прайс-листу фирмы "1С", но не менее 300 000 рублей", http://www.online-ufa.ru/content/articles/upgrade-licenses-1c-from-prof-to-corp/ Нет, если финансы позволяют, то конечно... Серверу, на котором работает 10-и летня база, тоже лет 10? |
|||
24
xXeNoNx
09.09.19
✎
11:05
|
Maxdop=0 не?
|
|||
25
xXeNoNx
09.09.19
✎
11:05
|
||||
26
fisher
09.09.19
✎
12:45
|
Как уже сказали, человеческий выход только в КОРП реализовали.
В ПРОФ создается копия таблицы. Пол-часа и пару миллионов записей - это еще цветочки. Плюс есть некоторый запас на апгрейд/оптимизацию железа. Когда действительно прижмет - остаются суровые варианты с подменой конфы и ручным добавлением колонки в БД. |
|||
27
nicxxx
09.09.19
✎
13:57
|
(0) Создать копию таблицы, перенести в нее данные из исходной (insert into ... select). Исходную очистить (truncate table). Выполнить реструктуризацию. Перенести данные обратно. Заполнить новую колонку данными по-умолчанию (если надо). Готово.
|
|||
28
1Сергей
09.09.19
✎
14:10
|
(2) много примеров нереляционных БД?
|
|||
29
ssh2006
09.09.19
✎
14:11
|
(0) Версия 8.3.14
Ускорено выполнение реструктуризации информационной базы при использовании СУБД Microsoft SQL Server и IBM DB2. Реально побыстрее стало |
|||
30
rsv
09.09.19
✎
14:16
|
(27) + 100...
|
|||
31
Nahoy
09.09.19
✎
14:37
|
(22) не путай реструктуризацию на сервере, доступную и в Проф, с механизмом фонового обновления
|
|||
32
Вафель
09.09.19
✎
14:56
|
(31) разве алтер тэйбл в профе есть?
|
|||
33
Nahoy
09.09.19
✎
14:58
|
(32) а где написано что нет?
|
|||
34
Defender77
09.09.19
✎
15:00
|
(27) Тогда уж переименовать исходную, создать новую со старым именем и полной копией структуры.
Собственно все тормоза при реструктуризации из-за этого переноса данных. |
|||
35
Xapac
09.09.19
✎
15:00
|
(11) Это быстро еще.....
|
|||
36
AquaMan
09.09.19
✎
15:01
|
(11) Ахаха.. когда за ночь не будет проходить, тогда начинай беспокоиться.
|
|||
37
nicxxx
09.09.19
✎
15:03
|
(34) +1. Написал свой пост и тоже об этом подумал, так быстрее в 2 раза будет))
|
|||
38
rsv
09.09.19
✎
15:05
|
(34) когда их сервер приложений переносит почему то пачками топ 100 или 1000 при
этом уходя в себя с опросом служебных таблиц |
|||
39
МихаилМ
09.09.19
✎
15:14
|
(0)
1с8 при реструктуризации создает копию таблицы и копирует в нею данные порциями по 1000 записей. на последнем этапе таблицу удаляет , копию переименовывает в оригинал. копирование по 1000 записей задерживает реструктуризацию. поэтому напишите ddl триггер, который сразу переименует основную таблицу в копию , а копию в основную таблицу. |
|||
40
Мандалай
09.09.19
✎
16:30
|
Был какой-то финт ушами, с созданием промежуточной пустой таблицы с новой колонкой, поищи в гугле.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |