SELECTSELECT

Announcement

カスタムトップレベル dbt キーの活用

By SELECT Team

このページはEnglishPortuguêsDeutschEspañolItalianoFrançaisでもご覧いただけます。

カスタムトップレベル dbt キーの活用

dbt のクエリコメント/タグに設定したカスタムトップレベルキーでフィルタリングやスライスが可能になりました。

Niall WoodwardCo-founder & CTO of SELECT

ユーザーが dbt プロジェクトで設定した meta キー / タグを活用 できる機能と同様に、任意のカスタムトップレベルのクエリコメント/タグキーでフィルタリングやスライスができるようになりました。設定画面でアクセスしたいキーを指定すると、SELECT 全体でフィルター/スライスオプションとして利用できます。

SELECT がトップレベル dbt キーをサポートしました

カスタムトップレベルキーとは

以下の dbt モデル queries の例を考えてみます:

1{{ config( materialized='incremental', meta={'team': 'data'} ) }} select * from {{ ref('stg_query_history') }}

このモデルを実行し、dbt プロジェクトに dbt-snowflake-query-tags パッケージがインストールされている場合、SQL は以下のようになります:

1select * from analytics.stg_query_history /* {"app": "dbt", "dbt_snowflake_query_tags_version": "2.3.2", "dbt_version": "1.7.5", "project_name": "select_dbt", "target_name": "prod", "target_database": "SELECT_INGEST", "target_schema": "analytics", "invocation_id": "ac36fd96-48eb-4ab8-b585-f4da8d7e0de5", "node_name": "queries", "node_alias": "queries", "node_package_name": "select_dbt", "node_original_file_path": "models/queries.sql", "node_database": "SELECT_INGEST", "node_schema": "analytics", "node_id": "model.select_dbt.queries", "node_resource_type": "model", "node_meta": {"team": "data"}, "node_tags": [], "full_refresh": false, "which": "build", "invocation_command": "dbt build --vars {'source_schema': 'analytics', 'snowflake_organization_account_source_schema': 'analytics', 'destination_schema': 'analytics'} --target prod --select fqn:*", "node_refs": ["stg_query_history", ], "materialized": "incremental"} */;

ユーザーはクエリコメントのメタデータに追加のトップレベルキーを付与できます。カスタムトップレベルキーとは、上記のコメントにデフォルトで含まれていないキーのことです。以下のコメント内の internal_job_name キー(値は hourly_run)がその例です:

1select * from analytics.stg_query_history /* {"app": "dbt", "dbt_snowflake_query_tags_version": "2.3.2", "dbt_version": "1.7.5", "project_name": "select_dbt", "target_name": "prod", "target_database": "SELECT_INGEST", "target_schema": "analytics", "invocation_id": "ac36fd96-48eb-4ab8-b585-f4da8d7e0de5", "node_name": "queries", "node_alias": "queries", "node_package_name": "select_dbt", "node_original_file_path": "models/queries.sql", "node_database": "SELECT_INGEST", "node_schema": "analytics", "node_id": "model.select_dbt.queries", "node_resource_type": "model", "node_meta": {"team": "data"}, "node_tags": [], "full_refresh": false, "which": "build", "invocation_command": "dbt build --vars {'source_schema': 'analytics', 'snowflake_organization_account_source_schema': 'analytics', 'destination_schema': 'analytics'} --target prod --select fqn:*", "node_refs": ["stg_query_history", ], "materialized": "incremental", "internal_job_name": "hourly_run"} */;