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

docs

Вы можете настроить поведение docs для многих ресурсов сразу, задав его в dbt_project.yml. Вы также можете использовать конфигурацию docs в файлах properties.yaml, чтобы задать или переопределить поведение документации для конкретных ресурсов:

dbt_project.yml
models:
<resource-path>:
+docs:
show: true | false
node_color: color_id # Используйте имя (например, node_color: purple) или шестнадцатеричный код в кавычках (например, node_color: "#cd7f32")

models/schema.yml
version: 2

models:
- name: model_name
docs:
show: true | false
node_color: color_id # Используйте имя (например, node_color: purple) или шестнадцатеричный код в кавычках (например, node_color: "#cd7f32")

Определение

Свойство docs может быть использовано для предоставления конфигурации, специфичной для документации, для моделей. Оно поддерживает атрибут show, который контролирует, отображаются ли узлы на автоматически сгенерированном сайте документации. Также поддерживается node_color для моделей, семян, снимков и анализов. Другие типы узлов не поддерживаются.

Примечание: Скрытые модели все равно будут отображаться в визуализации DAG dbt, но будут обозначены как "скрытые".

Значение по умолчанию

Значение по умолчанию для showtrue.

Примеры

Пометить модель как скрытую

models:
- name: sessions__tmp
docs:
show: false

Пометить подкаталог моделей как скрытый

Примечание: Это также может скрыть пакеты dbt.

dbt_project.yml
models:
# скрытие моделей в подкаталоге staging
tpch:
staging:
+materialized: view
+docs:
show: false

# скрытие пакета dbt
dbt_artifacts:
+docs:
show: false

Пользовательские цвета узлов

Атрибут docs теперь поддерживает node_color для настройки цвета отображения некоторых типов узлов в DAG в рамках dbt docs. Вы можете определить цвета узлов в следующих файлах и применять переопределения, где это необходимо. Обратите внимание, что вам нужно запустить или перезапустить команду dbt docs generate.

Иерархия node_color:

<example-sql-file.sql> переопределяет schema.yml, который переопределяет dbt_project.yml

Примеры

Добавьте пользовательские node_colors к моделям, которые поддерживают это в подкаталогах, используя шестнадцатеричные коды или простое имя цвета.

Пример

marts/core/fct_orders.sql с node_color: red переопределяет dbt_project.yml с node_color: gold

marts/core/schema.yml с node_color: #000000 переопределяет dbt_project.yml с node_color: gold

dbt_project.yml
models:
tpch:
staging:
+materialized: view
+docs:
node_color: "#cd7f32"

marts:
core:
materialized: table
+docs:
node_color: "gold"
marts/core/schema.yml
models:
- name: dim_customers
description: Таблица измерений клиентов
docs:
node_color: '#000000'
marts/core/fct_orders.sql
{{
config(
materialized = 'view',
tags=['finance'],
docs={'node_color': 'red'}
)
}}

with orders as (

select * from {{ ref('stg_tpch_orders') }}

),
order_item as (

select * from {{ ref('order_items') }}

),
order_item_summary as (

select
order_key,
sum(gross_item_sales_amount) as gross_item_sales_amount,
sum(item_discount_amount) as item_discount_amount,
sum(item_tax_amount) as item_tax_amount,
sum(net_item_sales_amount) as net_item_sales_amount
from order_item
group by
1
),
final as (

select

orders.order_key,
orders.order_date,
orders.customer_key,
orders.status_code,
orders.priority_code,
orders.clerk_name,
orders.ship_priority,

1 as order_count,
order_item_summary.gross_item_sales_amount,
order_item_summary.item_discount_amount,
order_item_summary.item_tax_amount,
order_item_summary.net_item_sales_amount
from
orders
inner join order_item_summary
on orders.order_key = order_item_summary.order_key
)
select
*
from
final

order by
order_date

Если node_color несовместим с dbt docs, вы увидите ошибку компиляции, как в примере ниже.

Invalid color name for docs.node_color: aweioohafio23f. It is neither a valid HTML color name nor a valid HEX code.
dbt_project.yml
models:
tpch:
marts:
core:
materialized: table
+docs:
node_color: "aweioohafio23f"
0