|
|
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Ребьзя, привет. Исследуем тему миграции 1С (в частности СУБД) с MSSQL на PostgreSQL. Сразу к делу: У меня есть база (приложение - 1С) на MS SQL (2012) в несжатом виде (data_compression = NONE) весит 20 Гб. Мы ее экспортируем в dt-файл и загружаем в Postgres 9.2 от 1С (собран со всеми последними патчами по исходникам). База превращается в 34 Гб. Насколько я уже успел начитаться, в PostgreSQL по умолчанию сжатие, аналогичное data_compression в MSSQL, включено. Единственное, что я нашел в Google, так это поменять тип хранения у столбца в таблице, например: ALTER TABLE _accumrg13793 ALTER COLUMN _fld13807_rrref SET STORAGE 'сюда напиши что-нить из TOAST'; Вопросы: 1) Какие есть еще варианты? 2) Получается надо в каждой таблице, для каждого столбца это сделать? поможет ли это? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2015, 10:22 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Привожу результаты запроса: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2015, 11:01 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Первые 20 записей: size nspname parent relname relkind relpages reltuples1244233728 public _document274 r 151884 6716731112047616 public _inforg15522 r 135748 527974864837632 public _accumrgt13527 r 105571 5.80627e+06825139200 public _accum13527_bydims_trrrtrn i 100725 5.80627e+06690765824 public _accumrgt14294 r 84322 4.63767e+06684277760 public _inforg13419 r 83530 3.59176e+06658259968 public _accum14294_bydims_trrrr i 80354 4.63767e+06624795648 public _accumrgt14112 r 76269 4.65244e+06579813376 public _accum14112_bydims_trrr i 70778 4.65244e+06565846016 public _document359_vt10651 r 69073 3.59176e+06532094976 public _accumrg14093 r 64953 1.75089e+06492863488 public _inforg12136 r 60164 3.27958e+06474693632 public _accumrgt13742 r 57946 2.95277e+06450297856 public _accum13742_bydims_trrrnr i 54968 2.95277e+06409550848 public _accumrg13529 r 49994 1.89976e+06402710528 pg_toast config pg_toast_140510 t 0 0392462336 public _infor12136_byresource12150_snnnnnnn i 47908 3.27958e+06378585088 public _infor13419_byperiod_trrr i 46214 3.59176e+06372121600 public _document338 r 45425 183608 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2015, 11:16 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel BobrovnikovПервые 20 записей: sizenspnameparentrelnamerelkindrelpagesreltuples1244233728public_document274r1518846716731112047616public_inforg15522r135748527974864837632public_accumrgt13527r1055715.80627e+06825139200public_accum13527_bydims_trrrtrni1007255.80627e+06690765824public_accumrgt14294r843224.63767e+06684277760public_inforg13419r835303.59176e+06658259968public_accum14294_bydims_trrrri803544.63767e+06624795648public_accumrgt14112r762694.65244e+06579813376public_accum14112_bydims_trrri707784.65244e+06565846016public_document359_vt10651r690733.59176e+06532094976public_accumrg14093r649531.75089e+06492863488public_inforg12136r601643.27958e+06474693632public_accumrgt13742r579462.95277e+06450297856public_accum13742_bydims_trrrnri549682.95277e+06409550848public_accumrg13529r499941.89976e+06402710528pg_toastconfigpg_toast_140510t00392462336public_infor12136_byresource12150_snnnnnnni479083.27958e+06378585088public_infor13419_byperiod_trrri462143.59176e+06372121600public_document338r45425183608 -- тест ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2015, 11:39 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel BobrovnikovБаза превращается в 34 Гб. Для начала сделайте vacuum full & reindex (иногда быстрее сделать pg_dump а потом pg_restore в отдельную базу) Восстановление из dt - довольно специфичная процедура. Возможно, база уменьшится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2015, 12:53 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Хорошо. Как закончится, сообщу результаты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2015, 13:04 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel BobrovnikovРебьзя, привет. Исследуем тему миграции 1С (в частности СУБД) с MSSQL на PostgreSQL. Сразу к делу: У меня есть база (приложение - 1С) на MS SQL (2012) в несжатом виде (data_compression = NONE) весит 20 Гб. Мы ее экспортируем в dt-файл и загружаем в Postgres 9.2 от 1С (собран со всеми последними патчами по исходникам). База превращается в 34 Гб. Насколько я уже успел начитаться, в PostgreSQL по умолчанию сжатие, аналогичное data_compression в MSSQL, включено. Единственное, что я нашел в Google, так это поменять тип хранения у столбца в таблице, например: ALTER TABLE _accumrg13793 ALTER COLUMN _fld13807_rrref SET STORAGE 'сюда напиши что-нить из TOAST'; Вопросы: 1) Какие есть еще варианты? 2) Получается надо в каждой таблице, для каждого столбца это сделать? поможет ли это? всеравно что не делай скорее всего будет по размеру больше чем в mssql (по целому ряду причин). Но всеравно попробуйте vacuum full+reindex (на время этой процедуры база будет недоступна) может гигов 5-10 освободите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2015, 14:07 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
vaccum full прошел. reindex прошел. Размер изменился на 1 Гб в минус. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2015, 14:26 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel BobrovnikovУ меня есть база (приложение - 1С) на MS SQL (2012) в несжатом виде (data_compression = NONE) весит 20 Гб. Мы ее экспортируем в dt-файл и загружаем в Postgres 9.2 от 1С (собран со всеми последними патчами по исходникам). База превращается в 34 Гб. Это норма, беспокоиться по этому поводу не нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2015, 11:25 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
это только одна база :) У нас еще некоторые базы по 200-300 и 500 Гб в сжатом(data_compression=page) виде.. Получается, что выходи один - подключать большие диски? А что скажите по поводу данной команды: Код: sql 1. Когда ее надо применять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2015, 12:51 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel BobrovnikovУ нас еще некоторые базы по 200-300 и 500 Гб в сжатом(data_compression=page) виде.. Не дешевле ли вам остаться на MS SQL? Помимо размера будут и другие проблемы со связкой Postgresql+1С. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2015, 13:05 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Руководство сейчас решает... Моя задача сделать исследовательский контур, запустить отчеты, регламенты, обмен. Конечно, будет обсчет стоимости перехода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2015, 13:41 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Еще столкнулись с такой проблемой: латинские идентификаторы обрезает до 63 символов, русские до 32. по справке postgres, изменение NAMEDATALEN должно помочь. It's not possible to alter this option - it needs to be changed in source file src/include/pg_config_manual.h. Then Postgres needs to be recompiled, data directory initialized with initdb and data restored. После внесения изменений в pg_config_manual.h, сделал так: 1) rm -rf * /var/lib/pgsql/9.2/data 2) su - postgres 3) initdb --locale=ru_RU.utf8 Создали базу, а обрезание осталось. Теже 32 символа... Что делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 14:33 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel BobrovnikovЕще столкнулись с такой проблемой: латинские идентификаторы обрезает до 63 символов, русские до 32. по справке postgres, изменение NAMEDATALEN должно помочь. It's not possible to alter this option - it needs to be changed in source file src/include/pg_config_manual.h. Then Postgres needs to be recompiled, data directory initialized with initdb and data restored. После внесения изменений в pg_config_manual.h, сделал так: 1) rm -rf * /var/lib/pgsql/9.2/data 2) su - postgres 3) initdb --locale=ru_RU.utf8 Создали базу, а обрезание осталось. Теже 32 символа... Что делать?в 1С8 нет русских имён. так у вас 1С ? правда--правда ??7777агага если вы сами их наплодили в масдайскл -- вы ССЗБ. разыменуйте их взад в латиницу [однозначным транслитератором -- их есть], а на клиенте подставляйте свои алиасы обратно. хотя ваша решимость обломать сразу нефритовый корень -- внушаит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 14:42 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel BobrovnikovЕще столкнулись с такой проблемой: латинские идентификаторы обрезает до 63 символов, русские до 32. по справке postgres, изменение NAMEDATALEN должно помочь. It's not possible to alter this option - it needs to be changed in source file src/include/pg_config_manual.h. Then Postgres needs to be recompiled, data directory initialized with initdb and data restored. После внесения изменений в pg_config_manual.h, сделал так: 1) rm -rf * /var/lib/pgsql/9.2/data 2) su - postgres 3) initdb --locale=ru_RU.utf8 Создали базу, а обрезание осталось. Теже 32 символа... Что делать? а базу то пересобрали и переставили после сборки? (configure/make/make install)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 14:42 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Maxim Boguk, Реинициализация "3) initdb --locale=ru_RU.utf8" системной БД это разве не все равно что пересобрать? Просто, я скачивал http://v8.1c.ru/overview/postgres_patches_notes.htm файл postgresql92-9.2.1-1.1C.src.rpm. Делал rpmbuild и все дела... На выходе он мне дал готовый RPM - postgresql92-9.2.1-1.1C.x86_64.rpm Как сделать reinit в данном случае? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 14:57 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Maxim Boguk, Сами изменения в pg_config_manual.h я вносил по адресу: /usr/pgsql-9.2/include/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 15:01 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel BobrovnikovMaxim Boguk, Реинициализация "3) initdb --locale=ru_RU.utf8" системной БД это разве не все равно что пересобрать? Просто, я скачивал http://v8.1c.ru/overview/postgres_patches_notes.htm файл postgresql92-9.2.1-1.1C.src.rpm. Делал rpmbuild и все дела... На выходе он мне дал готовый RPM - postgresql92-9.2.1-1.1C.x86_64.rpm Как сделать reinit в данном случае?ну какбе по ссылке есть слово "рекомпайл". пересобрать вам надо бинарники (вы хидер сишный правили), а не кластер БД (который конечно тоже, но потом) --простите, не сионист, так, мимо проходил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 15:04 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Подскажите, пожалуйста, как? Если я ставил с RPM. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 15:30 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel BobrovnikovПодскажите, пожалуйста, как? Если я ставил с RPM. я бы начал с поиска окрестного сиониста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 15:34 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Если я Вас правильно понял, то этот сишный файл ставиться из RPM и менять-не меняй его - уже установленный Postgres его не меняет. Если это так, что я переделаю RPM и заново поставлю. Отпишусь тогда. Спасибо за наводку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 17:02 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel Bobrovnikov, ну все верно -- вот же ваша цитата авторIt's not possible to alter this option - 1. it needs to be changed in source file src/include/pg_config_manual.h. 2. Then Postgres needs to be recompiled, 3. data directory initialized with initdb 4. and data restored. а то что Макс сказал про базу -- авторconfigure/make/make install -- вот это вот всё -- это же типовой бубен сиониста, да :?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 17:11 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Получилось! Собрал RPM с измененным сишным файлом, установил на новую виртуалку для проверки и ..вуаля! Создали тестовую таблицу с 129-тью русскими символами - 1С все таки :) Исследуем дальше. Спасибо за помощь! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 17:53 |
|
||
|
Сжатие базы данных
|
|||
|---|---|---|---|
|
#18+
Pavel Bobrovnikov, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2015, 17:54 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=38871988&tid=1998164]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
201ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 541ms |

| 0 / 0 |
