Тип данных
Типы данных (fs_type) объединяют в себе типы данных из разных СУБД (db_type).
Терминология:
fs_type- тип данных. Логическая сущность.db_type- тип данных в СУБД. Соответствие междуfs_typeиdb_typeназывается имплементацией.
При регистрации/описании объектов используются именно fs_type.
Для корректной работы с данными необходимо настроить имплементации типов данных
для диалектов СУБД.
Пример:
| fs_type | db_type | db_name |
|---|---|---|
| AMOUNT | decimal(26,2) | postgresql |
| AMOUNT | decimal | spark |
| FLOAT | float8 | postgresql |
| FLOAT | double | spark |
| INT | integer | postgresql |
| INT | int | spark |
Таким образом одно значение fs_type может объединять в себе несколько имплементаций
на разные диалекты, что позволяет работать одновременно с разными СУБД используя один
и тот же справочник типов данных.
Базовое наполнение справочника fs_type, а так же имплементаций, предоставляется по умолчанию.
Доступна пользовательская настройка справочников и имплементаций
в API в зависимости от потребностей пользователя.
Каталог данных в SDK:
Подробная информация о типе данных в SDK:
Типы данных по-умолчанию
Если в процессе работы с данными пользователь не задает fs_type явно, то используется
справочник типов данных "по-умолчанию" (default_fs_type).
Справочник представляет собой соответствие между типами данных СУБД (db_type)
и типами данных (fs_type).
В справочнике должны быть определены все типы данных СУБД, которые используются пользователем.
Справочник типов данных default_fs_type настраивается для каждого диалекта отдельно.
Пример:
| db_type | default_fs_type | db_name |
|---|---|---|
| bigint | BIG_INT | postgresql |
| bigserial | BIG_INT | postgresql |
| integer | BIG_INT | postgresql |
| json | BIG_STRING | postgresql |
| text | BIG_STRING | postgresql |
| character | BIG_STRING | postgresql |