Операційна БД реєстру

🌐 Цей документ доступний українською та англійською мовами. Використовуйте перемикач у правому верхньому куті, щоб змінити версію.

1. Загальний опис

База даних registry містить як службові таблиці сервісів так і всі таблиці реєстру змодельовані адміністратором регламенту.

Службові таблиці створюються в схемі public при створенні реєстру. Таблиці реєстру створюються в схемі registry при розгортанні регламенту.

У цьому документі розглянуті службові таблиці сервісів.

2. Схема бази даних

registry-public-schema
Умовні позначення
Позначення в діаграмі Позначення в таблиці Значення

ο та [PK]

(PK)

Первинний ключ

[FK]

(references таблиця.колонка)

Зовнішній ключ

ім’я колонки жирним шрифтом

Обов’язкове поле (not null)

ім’я колонки звичайним шрифтом

Необов’язкове поле (null)

3. Структури даних

3.1. ddm_liquibase_metadata

Метадані отримані з моделі даних регламенту. На їх основі будується API даних.

Наразі кожен тип зміни моделі даних використовує свій формат запису метаданих, тому в більшості випадків вміст колонок не відповідає їх початковому призначенню.

Ім’я колонки
Опис

metadata_id integer (PK)
Ідентифікатор рядка

change_type text
Тип зміни

change_name text
Назва зміни

attribute_name text
Ім’я атрибуту

attribute_value text
Значення атрибуту

created_at timestamp with time zone
Час створення запису

Обмеження унікальності

change_name, change_type, attribute_name, attribute_value

3.2. ddm_rls_metadata

Налаштування правил Row-Level Security для запитів до API даних

Ім’я колонки
Опис

rls_id integer (PK)
Ідентифікатор рядка

name text
Назва правила

type text
Тип операції

  • read

  • write

jwt_attribute text
Ім’я атрибуту jwt-токену, в якому передаються значення за якими відбувається фільтрація

check_column text
Ім’я колонки-дискримінатору по якій відбувається фільтрація

check_table text
Назва таблиці або представлення критерію пошуку, до яких застосовується правило

Обмеження унікальності

name, type

check_table, type

3.3. ddm_role_permission

Каталог прав виданих для ролі. Використовується для рольового контролю доступу (RBAC) до даних реєстру.

Ім’я колонки
Опис

permission_id integer (PK)
Ідентифікатор рядка

role_name text
Назва ролі користувача

object_name text
Ім’я таблиці чи критерію пошуку для яких надається дозвіл

column_name text
Ім’я колонки для якої надається дозвіл

operation enum
Тип операції на яку надається дозвіл

  • S - читання

  • I - створення

  • U - оновлення

  • D - видалення

created_at timestamp with time zone
Час створення дозволу

Обмеження унікальності

role_name,object_name,operation,column_name

3.4. ddm_source_application

Каталог додатків - джерел даних. Записи в каталог додаються автоматично коли від додатка вперше надходять дані до реєстру.

Ім’я колонки
Опис

application_id uuid (PK)
Ідентифікатор рядка

application_name text
Назва додатку

created_by text
Ідентифікатор користувача за запитом якого створено запис

created_at timestamp with time zone
Час створення запису

Обмеження унікальності

application_name

3.5. ddm_source_business_process

Каталог бізнес-процесів - джерел даних. Записи в каталог додаються автоматично коли від бізнес-процесу вперше надходять дані до реєстру.

Ім’я колонки
Опис

business_process_id uuid (PK)
Ідентифікатор рядка

business_process_name text
Назва бізнес-процесу

created_by text
Ідентифікатор користувача за запитом якого створено запис

created_at timestamp with time zone
Час створення запису

Обмеження унікальності

business_process_name

3.6. ddm_source_system

Каталог систем - джерел даних. Записи в каталог додаються автоматично коли від системи вперше надходять дані до реєстру.

Ім’я колонки
Опис

system_id uuid (PK)
Ідентифікатор рядка

system_name text
Назва системи

created_by text
Ідентифікатор користувача за запитом якого створено запис

created_at timestamp with time zone
Час створення запису

Обмеження унікальності

system_name