Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
dvp:db:structure [2013/04/10 21:54]
serge
dvp:db:structure [2016/11/03 19:39] (текущий)
kos
Строка 1: Строка 1:
-===== Рекомендуемая структура БД QBIS.Bank =====+====== Рекомендуемая структура БД QBIS.Bank ​======
  
 Структура БД описывается в файле ''​bisquit.st''​. Формат st-файла:​ Структура БД описывается в файле ''​bisquit.st''​. Формат st-файла:​
Строка 14: Строка 14:
   * 256 - сверхмалый размер записи (до 42 байт)   * 256 - сверхмалый размер записи (до 42 байт)
  
-Параметр **BPC** рекомендуется выбирать исходя из скорости роста области данных. Если область данных большая и растет очень быстро,​ то желательно,​ чтобы и размер кластера был большим. Возможные значения - 8, 64, 256.+Параметр **BPC** рекомендуется выбирать исходя из скорости роста области данных. Если область данных большая и растет очень быстро,​ то желательно,​ чтобы и размер кластера был большим. Возможные значения - 8, 64, 512.
  
-== Рекомендуемый файл bisquit.st == +===== Рекомендуемый файл bisquit.st ===== 
-Рекомендуемая структура в файле ''​bisquit.st''​ основана на анализе нескольких клиентских баз данных,​ работающих в однофилиальном режиме. В конкретном Банке характер данных может отличаться от проанализированных,​ поэтому значения RPB необходимо подбирать индивидуально.+ 
 +Рекомендуемая структура в файле ''​bisquit.st''​ основана на анализе нескольких клиентских баз данных,​ работающих в многофилиальном режиме. В конкретном Банке характер данных может отличаться от проанализированных,​ поэтому значения RPB необходимо подбирать индивидуально ​(например,​ для однофилиального режима размер записей в области "​pos"​ меньше,​ поэтому значение RPB для этой области можно установить равным 256).
   # Описание области Before Image   # Описание области Before Image
   b .   b .
Строка 71: Строка 72:
   * в областях msg, text и mart средний размер записи значительно превосходит средний средний размер записей в БД, а область perm содержит записи с наименьшей длиной.   * в областях msg, text и mart средний размер записи значительно превосходит средний средний размер записей в БД, а область perm содержит записи с наименьшей длиной.
  
-=== Перенос данных между областями ===+===== Перенос данных между областями ​=====
 Одним из параметров БД, влияющих на производительность,​ является размещение таблиц БД по областям. Для эффективного доступа к данным таблица должна быть размещена в той области,​ которая больше всего ей подходит как по величине среднего размера записи,​ так и по скорости роста объемов данных. Одним из параметров БД, влияющих на производительность,​ является размещение таблиц БД по областям. Для эффективного доступа к данным таблица должна быть размещена в той области,​ которая больше всего ей подходит как по величине среднего размера записи,​ так и по скорости роста объемов данных.
 Для переноса таблиц и индексов из одной области в другую есть несколько способов:​ Для переноса таблиц и индексов из одной области в другую есть несколько способов:​
   * Использование [[unix:​progress:​dump-load|методики двоичного dump/load]] для передампливания всей БД целиком либо по частям. Эту технологию эффективно выполнять вместе с переходом на новую структуру хранения данных Type Area II, которая значительно увеличивает производительность БД.   * Использование [[unix:​progress:​dump-load|методики двоичного dump/load]] для передампливания всей БД целиком либо по частям. Эту технологию эффективно выполнять вместе с переходом на новую структуру хранения данных Type Area II, которая значительно увеличивает производительность БД.
   * Использование штатной утилиты [[http://​documentation.progress.com/​output/​OpenEdge112/​oe112html/​Data%20Management/​wwhelp/​wwhimpl/​common/​html/​wwhelp.htm#​href=Database%20Administration/​30dmadmch22.041.67.html&​single=true|PROUTIL TABLEMOVE]]   * Использование штатной утилиты [[http://​documentation.progress.com/​output/​OpenEdge112/​oe112html/​Data%20Management/​wwhelp/​wwhimpl/​common/​html/​wwhelp.htm#​href=Database%20Administration/​30dmadmch22.041.67.html&​single=true|PROUTIL TABLEMOVE]]
-Для автоматизации процесса переноса таблиц между областями можно воспользоваться утилитой ''​genscript.p'',​ которая создаёт скрипт переноса таблиц и индексов,​ находящихся не в "​своих"​ областях. Она использует информацию о структуре из текущей БД и специальный файл ''​table.cfg''​. Этот файл конфигурации имеет следующую структуру:​ +Для автоматизации процесса переноса таблиц между областями можно воспользоваться ​процедурой ''​genscript.p'',​ которая создаёт скрипт переноса таблиц и индексов,​ находящихся не в "​своих"​ областях. Она использует информацию о структуре из текущей БД и специальный файл ''​table.cfg''​. Этот файл конфигурации имеет следующую структуру:​ 
-   <​area-name>:​ <​table-name1>,​ <​table-name2>​+   <​area-name>:<​table-name1>,<​table-name2>​,...
    ...    ...
 Файл ''​table.cfg''​ регулярно обновляется ​ и выходит в составе патчей. Файл ''​table.cfg''​ регулярно обновляется ​ и выходит в составе патчей.
Строка 86: Строка 87:
    bq41d -p genscript.p -param "​table.cfg,​movetable"​    bq41d -p genscript.p -param "​table.cfg,​movetable"​
  
-=== Дополнительная информация ===+Учтите,​ что штатная утилита PROUTIL TABLEMOVE осуществляет перенос данных в рамках одной транзакции. Записи одна за одной читаются в исходной таблице,​ копируются в новую таблицу,​ а затем исходные записи удаляются. Поэтому размер BI-файла может вырасти до 10 раз от размера самой таблицы. 
 +===== Дополнительная информация ===== 
   * Progress Knowledgebase:​ [[http://​knowledgebase.progress.com/​articles/​Article/​P77017|How to move tables faster with tablemove?​]]   * Progress Knowledgebase:​ [[http://​knowledgebase.progress.com/​articles/​Article/​P77017|How to move tables faster with tablemove?​]]
   * OpenEdge Database Administration Guide: [[http://​documentation.progress.com/​output/​OpenEdge112/​oe112html/​Data%20Management/​wwhelp/​wwhimpl/​common/​html/​wwhelp.htm#​href=Database%20Administration/​22dmadmch15.033.10.html&​single=true|Maintaining indexes and tables]]   * OpenEdge Database Administration Guide: [[http://​documentation.progress.com/​output/​OpenEdge112/​oe112html/​Data%20Management/​wwhelp/​wwhimpl/​common/​html/​wwhelp.htm#​href=Database%20Administration/​22dmadmch15.033.10.html&​single=true|Maintaining indexes and tables]]
 +
 +{{tag>​progress prodb}}