Импорт и экспорт источников данных
CLI Liteset (superset) позволяет импортировать и экспортировать источники данных в YAML. К источникам данных относятся БД. Структура данных:
├──databases
| ├──database_1
| | ├──table_1
| | | ├──columns
| | | | ├──column_1
| | | | ├──column_2
| | | | └──... (другие колонки)
| | | └──metrics
| | | ├──metric_1
| | | ├──metric_2
| | | └──... (другие метрики)
| | └── ... (другие таблицы)
| └── ... (другие БД)
Экспорт источников данных в YAML
Распечатать текущие источники в stdout:
superset export_datasources
Сохранить в ZIP:
superset export_datasources -f <filename>
По умолчанию null-значения опускаются. Флаг -d включает их. Флаг -b включает обратные ссылки (например, в колонке указывается id таблицы, к которой она принадлежит).
Также экспорт доступен из UI:
- Sources → Databases для экспорта всех таблиц одной/нескольких БД (Tables — для одной или нескольких таблиц).
- Выберите нужные элементы.
- Actions → Export в YAML.
- Чтобы импортировать что-то, экспортированное из UI, нужно вложить его в родительский элемент: БД должна быть вложена в
databases, таблица — в БД.
Полный список доступных в YAML-импорте полей:
superset export_datasource_schema
Флаг -b также включает обратные ссылки.
Импорт источников данных
Из ZIP:
superset import_datasources -p <path / filename>
Опциональный флаг -u задаёт пользователя, от имени которого выполняется импорт. По умолчанию — admin:
superset import_datasources -p <path / filename> -u 'admin'