Appearance
Data Catalog
Подключения к внешним базам, просмотр схем и датасеты — метаописание удалённых таблиц. Строки читаются и записываются в источник. Data Tables остаётся внутренним warehouse.
Порты
| Порт | Назначение |
|---|---|
| 8109 | HTTP REST (PM2) |
| 18109 | Docker host |
- БД:
data_catalog_db - Gateway:
/proxy/data-catalog/...
Драйверы
postgres, mysql, sqlserver, clickhouse.
DSN хранится зашифрованным (ENCRYPTION_KEY, AES-GCM). В ответах API секрет не возвращается.
ClickHouse: UPDATE/DELETE идут через ALTER TABLE ... UPDATE/DELETE (мутации). Новый датасет на ClickHouse по умолчанию read_only; INSERT доступен, если снять флаг и движок таблицы это позволяет.
API
Auth: JWT через gateway. Межсервисный запрос (dashboards) — Authorization: Service <SERVICE_TOKEN> и X-User-ID.
Подключения и датасеты общие для организации. Доступ: владелец и шаринг connection/dataset, роли admin, user, viewer. viewer читает схему и строки. admin и user меняют метаданные и строки, если датасет не read_only. Шарить может только владелец.
Connections
| Метод | Путь | Описание |
|---|---|---|
POST | /api/v1/connections | Создать (name, driver, dsn) |
GET | /api/v1/connections | Список доступных |
GET | /api/v1/connections/:id | Карточка |
PATCH | /api/v1/connections/:id | Имя, драйвер, DSN |
DELETE | /api/v1/connections/:id | Удалить |
POST | /api/v1/connections/:id/test | Проверка соединения |
GET | /api/v1/connections/:id/schemas | Схемы |
GET | /api/v1/connections/:id/schemas/:schema/tables | Таблицы |
GET | /api/v1/connections/:id/tables/:schema/:table | Колонки |
GET/POST | /api/v1/connections/:id/share | Список / выдать доступ |
DELETE | /api/v1/connections/:id/share/:user_id | Снять доступ |
Datasets
| Метод | Путь | Описание |
|---|---|---|
POST | /api/v1/datasets | Датасет на таблицу источника |
GET | /api/v1/datasets | Список |
GET | /api/v1/datasets/:id | Карточка и overlay колонок |
PATCH | /api/v1/datasets/:id | Название, описание, теги, read_only |
PATCH | /api/v1/datasets/:id/columns | Overlay колонок |
GET | /api/v1/datasets/:id/schema | Живая схема + overlay |
GET | /api/v1/datasets/:id/rows | Страница строк |
POST | /api/v1/datasets/:id/rows | INSERT |
PATCH | /api/v1/datasets/:id/rows | UPDATE по PK (pk, values) |
DELETE | /api/v1/datasets/:id/rows | DELETE по PK |
POST | /api/v1/datasets/:id/query | Структурный запрос для dashboards |
GET/POST | /api/v1/datasets/:id/share | Шаринг |
DELETE | /api/v1/datasets/:id/share/:user_id | Снять доступ |
Произвольный SQL не принимается. Идентификаторы сверяются со схемой, значения уходят параметрами. Лимит выборки — 1000 строк.
Env
| Переменная | Назначение |
|---|---|
PORT | 8109 |
DB_NAME | data_catalog_db |
ENCRYPTION_KEY | base64, 32 байта |
SERVICE_TOKEN | приём запросов dashboards |
Секция UI
space_data_catalog в правах Auth (none / view / edit). Пункт сайдбара: /catalog. Подключения и датасеты общие для организации; доступ — у владельца и пользователей из шаринга.