Перейти к основному содержимому

Таблицы dbt Information Schema

dbt Information Schema — это интерфейс с определённым контрактом для доступа к метаданным всех ресурсов вашего проекта dbt. Таблицы Information Schema создаются командами dbt build, dbt run, dbt compile или dbt parse с флагом --generate-info-schema.

Таблицы​

dbt Information Schema v1 создаёт таблицы в следующих пространствах имён:

  • dbt: содержит метаданные о структуре, ресурсах и конфигурации проекта. Отвечает на вопрос: Что представляет собой ваш проект?
  • dbt_rt: содержит данные о выполнении. Отвечает на вопрос: Что произошло при запуске вашего проекта?

Пространство имён dbt​

Таблицы пространства имён dbt содержат метаданные о структуре, ресурсах и конфигурации проекта.

ТаблицаОписание
dbt.dag_nodesВсе участники DAG с unique_id и resource_type
dbt.projectМетаданные уровня проекта
dbt.packagesУстановленные пакеты, по одной строке на пакет
dbt.project_varsПеременные проекта, по одной строке на пару (область действия проекта, имя переменной)
dbt.project_env_varsПеременные окружения, используемые в проекте
dbt.modelsВсе модели
dbt.seedsВсе seed-файлы
dbt.sourcesВсе источники
dbt.snapshotsВсе снимки
dbt.functionsВсе пользовательские функции
dbt.analysesВсе анализы
dbt.hooksВсе операции хуков on-run-start и on-run-end
dbt.checksВсе проверки
dbt.data_testsВсе тесты данных (универсальные и единичные)
dbt.unit_testsВсе модульные тесты
dbt.macrosВсе макросы
dbt.groupsВсе группы
dbt.exposuresВсе экспозиции
dbt.metricsВсе метрики
dbt.docs_blocksВсе блоки документации
dbt.saved_queriesВсе сохранённые запросы
dbt.semantic_modelsВсе семантические модели
dbt.semantic_entitiesСущности семантических моделей
dbt.semantic_measuresМеры семантических моделей
dbt.semantic_dimensionsИзмерения семантических моделей
dbt.semantic_relationshipsСвязи между семантическими моделями
dbt.time_spinesОпределения временных осей
dbt.classifiersКлассификаторы ресурсов
dbt.edgesРёбра DAG (родительский узел → дочерний узел)
dbt.node_columnsИмена, типы и описания столбцов узлов; для источников включаются только столбцы, объявленные в YAML (используйте --write-catalog, чтобы включить все столбцы источников, используемых выбранными узлами)
dbt.column_lineageПроисхождение данных на уровне столбцов (заполняется при использовании --static-analysis strict)

Пространство имён dbt_rt​

Таблицы пространства имён dbt_rt содержат данные о выполнении. Эти таблицы недоступны для проверок на этапе разбора.

ТаблицаОписание
dbt_rt.invocationsПо одной строке на вызов dbt
dbt_rt.run_resultsРезультаты для каждого узла в каждом вызове
dbt_rt.run_results_latestПредставление с последним результатом выполнения для каждого узла
dbt_rt.relationsДанные каталога хранилища для каждого материализованного объекта (заполняется при использовании --write-catalog)
dbt_rt.freshnessРезультаты проверок свежести данных для источников и моделей; resource_type указывает, относится ли строка к source или model
dbt_rt.diagnosticsДиагностические данные вызовов
dbt_rt.adapter_queriesЗапросы адаптера, отправленные во время вызовов

Столбцы, доступные для проверок​

При использовании макроса {{ info_schema() }} в проверке доступны только столбцы, определяемые на этапе разбора. dbt предоставляет доступ к этим столбцам через представление с тем же именем, что и таблица Information Schema. Передайте это имя в макрос без префикса dbt..

Полная таблица в target/info_schema/v1/ может содержать больше столбцов. Доступ ко всем столбцам можно получить, используя макрос с dbt show --inline.

ПредставлениеСтолбцы
modelsunique_id, name, resource_type, package_name, original_file_path, fqn, alias, description, node_language, database_name, schema_name, relation_name, identifier, enabled, materialized, config, access, group, contract_enforced, version, latest_version, deprecation_date, primary_key, properties_yml_file_path, tags, meta, ingested_at
seedsunique_id, name, resource_type, package_name, original_file_path, fqn, alias, description, node_language, database_name, schema_name, relation_name, identifier, enabled, materialized, config, access, group, contract_enforced, version, latest_version, deprecation_date, primary_key, properties_yml_file_path, tags, meta, ingested_at
snapshotsunique_id, name, resource_type, package_name, original_file_path, fqn, alias, description, node_language, database_name, schema_name, relation_name, identifier, enabled, materialized, config, access, group, contract_enforced, version, latest_version, deprecation_date, primary_key, properties_yml_file_path, tags, meta, raw_code, ingested_at
functionsunique_id, name, resource_type, package_name, original_file_path, fqn, alias, description, node_language, database_name, schema_name, relation_name, identifier, enabled, materialized, config, access, group, contract_enforced, version, latest_version, deprecation_date, primary_key, properties_yml_file_path, tags, meta, raw_code, ingested_at
analysesunique_id, name, resource_type, package_name, original_file_path, fqn, alias, description, node_language, database_name, schema_name, relation_name, identifier, enabled, materialized, config, access, group, contract_enforced, version, latest_version, deprecation_date, primary_key, properties_yml_file_path, tags, meta, raw_code, ingested_at
hooksunique_id, name, resource_type, package_name, original_file_path, fqn, alias, description, node_language, database_name, schema_name, relation_name, identifier, enabled, materialized, config, access, group, contract_enforced, version, latest_version, deprecation_date, primary_key, properties_yml_file_path, tags, meta, raw_code, ingested_at
checksunique_id, name, resource_type, package_name, original_file_path, fqn, alias, description, node_language, database_name, schema_name, relation_name, identifier, enabled, materialized, config, access, group, contract_enforced, version, latest_version, deprecation_date, primary_key, properties_yml_file_path, tags, meta, raw_code, ingested_at
sourcesunique_id, name, resource_type, package_name, original_file_path, fqn, alias, description, node_language, database_name, schema_name, relation_name, identifier, enabled, materialized, config, access, group, contract_enforced, version, latest_version, deprecation_date, primary_key, properties_yml_file_path, tags, meta, source_name, source_description, loader, loaded_at_field, ingested_at
data_testsunique_id, name, package_name, original_file_path, fqn, description, database_name, schema_name, relation_name, enabled, materialized, config, tags, meta, group, properties_yml_file_path, test_name, test_definition_package, arguments, column_name, node_unique_id, severity, warn_if, error_if, fail_calc, store_failures, store_failures_as, ingested_at
unit_testsunique_id, name, model, description, package_name, original_file_path, fqn, given, expect, overrides, versions, ingested_at
node_columnsnode_unique_id, column_name, data_type_declared, description, tags, ingested_at
dag_nodesunique_id, resource_type, ingested_at — по одной строке на каждый включённый ресурс, участвующий в DAG, включая экспозиции, метрики и модульные тесты
edgesparent_unique_id, child_unique_id, ingested_at
macrosunique_id, name, package_name, original_file_path, macro_sql, description, depends_on_macros, arguments, docs_show, properties_yml_file_path, meta, created_at, ingested_at
docs_blocksunique_id, name, package_name, original_file_path, content, ingested_at
groupsunique_id, name, description, owner_name, owner_email, ingested_at
exposuresunique_id, name, exposure_type, label, owner_name, owner_email, url, maturity, description, package_name, original_file_path, fqn, depends_on, tags, created_at, ingested_at
metricsunique_id, name, label, metric_type, description, package_name, original_file_path, fqn, type_params, metric_filter, time_granularity, input_metric_names, group, tags, meta, config, created_at, ingested_at
saved_queriesunique_id, name, label, description, package_name, original_file_path, fqn, query_params, exports, depends_on, group, tags, created_at, ingested_at
semantic_modelsunique_id, name, model, label, description, fqn, node_relation, primary_entity, defaults, group, created_at, ingested_at
semantic_entitiesunique_id, name, entity_type, description, label, entity_role, expr, ingested_at
semantic_measuresunique_id, name, agg, description, label, expr, create_metric, agg_time_dimension, agg_params, non_additive_dimension, ingested_at
semantic_dimensionsunique_id, name, dimension_type, description, label, expr, is_partition, time_granularity, validity_params, ingested_at
time_spinesunique_id, primary_column, primary_granularity, custom_granularities, node_relation, ingested_at
projectproject_name, dbt_version, adapter_type, git_sha, git_branch, git_uncommitted_changes, ingested_at
packagespackage_name, ingested_at
project_varsproject_name, var_name, var_value, ingested_at — переменная с областью действия пакета отображается с project_name этого пакета
project_env_varsenv_var_name, ingested_at

Связанная документация​

Нашли ошибку?

0
Loading