Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
unix:progress:dump-load [2015/10/08 17:00] kos |
unix:progress:dump-load [2021/07/07 22:38] (текущий) kos [Загрузка] |
||
---|---|---|---|
Строка 27: | Строка 27: | ||
Data Definitions (.df file)... <bisquit.df> | Data Definitions (.df file)... <bisquit.df> | ||
User Table Contents... <_user.d> | User Table Contents... <_user.d> | ||
- | Security Authentication Records... <_sec-authentication-*.d> | + | Security Domains... <_sec-authentication-*.d> |
Sequences Current Values... <_seqvals.d> | Sequences Current Values... <_seqvals.d> | ||
Строка 34: | Строка 34: | ||
* Создаем файл со списком всех таблиц исходной базы (''tabs.txt'') по выгруженному ''bisquit.df'': | * Создаем файл со списком всех таблиц исходной базы (''tabs.txt'') по выгруженному ''bisquit.df'': | ||
- | sed -ne 's:^ADD TABLE "\(.*\)":\1:p' bisquit.df | tee tabs.txt | + | sed -ne 's:^ADD TABLE "\(.*\)".*$:\1:p' bisquit.df | tee tabs.txt |
- | Проверяем и фиксируем кол-во таблиц: | + | Проверяем и фиксируем количество таблиц: |
wc -l tabs.txt | wc -l tabs.txt | ||
Строка 43: | Строка 43: | ||
while read TAB; do | while read TAB; do | ||
- | bq41d dump $TAB . || break | + | bq41d dump $TAB . -thread 1 -threadnum 4 || break |
done <tabs.txt | tee dump.log | done <tabs.txt | tee dump.log | ||
- | Если какую-либо таблицу не надо дампить (напр. ''history''), то следует предварительно удалить ее из файла ''tabs.txt'' | + | Если какую-либо таблицу не надо дампить (например, ''history''), то следует предварительно удалить ее из файла ''tabs.txt''. |
После дампа проверяем логи (''dump.log'').\\ | После дампа проверяем логи (''dump.log'').\\ | ||
- | Проверяем кол-во сообщений об успешных дампах (должно соответствовать кол-ву таблиц): | + | Проверяем количество сообщений об успешных дампах (должно соответствовать количеству таблиц): |
grep "(6254)" dump.log | wc -l | grep "(6254)" dump.log | wc -l | ||
Строка 92: | Строка 92: | ||
Data Definitions (.df file)... <bisquit.df> | Data Definitions (.df file)... <bisquit.df> | ||
User Table Contents... <_user.d> | User Table Contents... <_user.d> | ||
- | Security Authentication Records... <_sec-authentication-*.d> | + | Security Domains... <_sec-authentication-*.d> |
Sequences Current Values... <_seqvals.d> | Sequences Current Values... <_seqvals.d> | ||
Строка 100: | Строка 100: | ||
bq41d tablemove table-name table-area [index-area] | bq41d tablemove table-name table-area [index-area] | ||
- | Или используем процедуру ''genscript.p'' для генерации скрипта ''move.sh'' по описанию ''table.cfg''. Актуальные версии ''genscript.p'' и ''table.cfg'' поставляются в составе исходников выпускаемых патчей. Перед запуском созданного скрипта ''move.sg'' проверьте его содержание и отредактируйте при необходимости. | + | Или используем процедуру ''genscript.p'' для генерации скрипта ''move.sh'' по описанию ''table.cfg''. Актуальные версии ''genscript.p'' и ''table.cfg'' поставляются в составе исходников выпускаемых патчей. Перед запуском созданного скрипта ''move.sh'' проверьте его содержание и отредактируйте при необходимости. |
bq41d -1 -p genscript.p -param table.cfg,move.sh | bq41d -1 -p genscript.p -param table.cfg,move.sh | ||
Строка 106: | Строка 106: | ||
* В этом месте лучше сделать бэкап созданной "пустой" базы с загруженной структурой, чтобы в случае неудачи начинать не с создания базы, а из бэкапа (база еще маленькая и восстановится быстро). | * В этом месте лучше сделать бэкап созданной "пустой" базы с загруженной структурой, чтобы в случае неудачи начинать не с создания базы, а из бэкапа (база еще маленькая и восстановится быстро). | ||
+ | * Для увеличения производительности загрузки можно предварительно выполнить запуск брокера БД и процессов APW а также выключить механизм защиты от сбоя (запись в журнал BI). Внимание: при указании опции "-i" в случае какого-либо сбоя в загрузке необходимо будет начать процесс полностью заново, с пункта создания новой пустой базы либо восстановить ее из предварительно сделанного бэкапа. | ||
+ | |||
+ | bq41d start -i -spin 50000 -L 102400 -bibufs 100 -B 20000 | ||
+ | |||
+ | Запуск нескольких процессов proapw позволит ускорить процесс загрузки данных. Задайте дополнительное их количество в параметрах запускающего скрипта: | ||
+ | |||
+ | RunBIW="yes" | ||
+ | RunAPW="yes" | ||
+ | BQNAPW="5" | ||
+ | |||
+ | Или используйте соответсвующие команды: | ||
+ | |||
+ | bq41d exec probiw \$BQDB | ||
+ | bq41d exec proapw \$BQDB | ||
+ | bq41d exec proapw \$BQDB | ||
+ | bq41d exec proapw \$BQDB | ||
+ | bq41d exec proapw \$BQDB | ||
+ | bq41d exec proapw \$BQDB | ||
+ | |||
* Грузим данные (//может требовать значительного времени!//): | * Грузим данные (//может требовать значительного времени!//): | ||
cd <dump dir> | cd <dump dir> | ||
- | for F in *.bd*; do bq41d load $F || break; done | tee load.log | + | for F in *.bd*; do bq41d load $F -tscope 5000 || break; done | tee load.log |
- | Если какую-либо таблицу не надо загружать (напр. ''history''), то следует | + | Если какую-либо таблицу не надо загружать (например, ''history''), то следует |
- | предварительно удалить или переименовать ее суффикс (''.bd'') | + | предварительно ее удалить или переименовать ее суффикс (''.bd'') |
- | * Проверяем логи (''load.log''). Искать "''err''" или "''fail''". Проверяем кол-во сообщений об успешных загрузках (должно соответствовать кол-ву таблиц): | + | * Проверяем логи (''load.log''). Искать "''err''" или "''fail''". Проверяем количество сообщений об успешных загрузках (должно соответствовать количеству загружаемых таблиц): |
grep "(6256)" load.log | wc -l | grep "(6256)" load.log | wc -l | ||
- | * Строим индексы (файл ''bisquit.srt'' должен быть создан заранее) | + | * Строим индексы (файл ''bisquit.srt'' должен быть создан заранее). Эта операция самая ресурсозатратная, во многих случаях имеет смысл запускать ее в пакетном режиме в нерабочее время (для этого удобно использовать юниксовую команду ''at''). |
bq41d idxbuild all -mergethreads 2 -threadnum 2 -datascanthreads 6 -B 1024 -TF 50 -TMB 64 -TB 64 -TM 32 -rusage -silent | bq41d idxbuild all -mergethreads 2 -threadnum 2 -datascanthreads 6 -B 1024 -TF 50 -TMB 64 -TB 64 -TM 32 -rusage -silent | ||
- | * Компилируем БИСквит при необходимости. | + | * Компилируем БИСквит при необходимости с помощью promake, например. |
- | Убираем из PROPATH все старые r-ки. Заходим в ''src'' и запускаем, например: | + | Убираем из PROPATH все старые r-ки. Заходим в ''src'' и запускаем: |
bq41d -U bis -P *** | bq41d -U bis -P *** | ||
run promake.p | run promake.p | ||
| | ||
- | указываем исходники: .../src/* | + | указываем исходники: <путь>/src/* |
указываем каталог для r | указываем каталог для r | ||
Строка 149: | Строка 168: | ||
-> Managing R-code Libraries//\\ | -> Managing R-code Libraries//\\ | ||
- Компиляция:\\ | - Компиляция:\\ | ||
- | - Документация БИСквит http://support.bis.ru/docs/\\ | + | - Документация БИСквит http://support.bis.ru/prod/bq/core/docs/\\ |
- Документация к патчам БИСквит//\\ | - Документация к патчам БИСквит//\\ | ||
+ | |||
+ | {{tag>progress prodb}} | ||