Это старая версия документа.


Рекомендуемая структура БД АБС QBIS.Bank

Структура БД описывается в файле bisquit.st. Формат st-файла: <тип> «код области»:<# области>,RPB;BPC <размещение> где

 RPB - records per block - максимальное количество записей в блоке
 BPC - blocks per cluster - количество блоков в одном кластере

В данной статье пойдет речь только об областях типа «d», содержащих данные.

Параметр RPB рекомендуется выбирать исходя из среднего размера записи для всех таблиц в области данных. Для размера блока 8 КБ оптимальны следующие значения этого параметра: 32 - большой размер записи (от 227 байт) 64 - средний размер записи (до 227 байт) 128 - малый размер записи (до 104 байт) 256 - сверхмалый размер записи (до 42 байт)

Параметр BPC рекомендуется выбирать исходя из скорости роста области данных. Если область данных большая и растет очень быстро, то желательно, чтобы и размер кластера был большим. Возможные значения - 8, 64, 256.

Рекомендуемая структура в файле bisquit.st основана на анализе нескольких клиентских баз данных, работающих в однофилиальном режиме. В конкретном Банке ситуация может отличаться.

# Транзакционные данные (быстрый рост, средний размер записи)
d "op":7,128;512 .
d "op-i":27,1;64 .
#
# История изменений (очень быстрый рост, средний размер записи)
d "history":8,128;512 .
d "history-i":28,1;64 .
#
# Допреквизиты (в т.ч. темпоральные), связи (быстрый рост, средний размер записи)
d "signs":9,128;512 .
d "signs-i":29,1;64 .
#
# Аналитические данные (очень быстрый рост, средний размер записи)
d "olap":10,128;512 .
d "olap-i":30,1;64 .
#
# Справочники, небольшие таблицы (медленный рост, малый/средний размер записи)
d "other":11,128;64 .
d "other-i":31,1;8 .
#
# Права доступа (медленный рост, малый размер записи)
d "perm":12,256;64 .
d "perm-i":32,1;8 .
#
# Клиентская база, счета, договоры (средний рост, средний размер записи)
d "acct":13,128;64 .
d "acct-i":33,1;8 .
#
# Остатки по счетам, субаналитика по счетам и договорам (быстрый рост, малый размер записи)
d "pos":14,128;512  .
d "pos-i":34,1;64 .
#
# Сообщения импорта-экспорта, заголовки отчетных данных (быстрый рост, большой размер записи)
d "msg":15,32;512  .
d "msg-i":35,1;8 .
#
# Справочники, текстовая информация (медленный рост, большой размер записи)
d "text":16,64;64  .
d "text-i":36,1;8 .
#
# Витрины данных (быстрый рост, большой размер записи)
d "mart":17,64;512  .
d "mart-i":37,1;8 .

При анализе учитывались следующие требования: * таблицы и индексы располагаются в разных областях, это необходимо для указания меньших значений BPC для областей с индексами, чтобы минимизировать размер малозаполненных таблиц, а также удобства администрирования; * области olap, history, op, signs, msg, mart растут быстрее остальных; * в областях msg, text и mart средний размер записи значительно превосходит средний средний размер записей в БД, а область perm содержит записи с наименьшей длиной.

Информацию о структуре БД использует утилита genscript.p, которая создаёт скрипт переноса таблиц между областями. Для своей работы она использует файл table.cfg, содержащий информацию о размещении таблиц по областям. Этот файл регулярно обновляется и выходит в составе патчей.

Дополнительная информация о технологии dump/load. Дополнительная информация об утилите genscript.p - в заявке 0164026 (4.1D79).