mcpField
S
snowflake-semanticview

snowflake-semanticview

github.com/githubデータ・データベース40.5k9.0k 回インストール1 日前に更新
リポジトリ

snowflake-semanticview について

Snowflake のセマンティックビュー作成を支援するスキルです。モデル分析から DDL の作成、Snowflake CLI での検証までを案内し、定められた手順でビューを構築する Snowflake ユーザー向けです。

主な機能

  1. 01セマンティックビュー DDL の作成
  2. 02スター型モデルの関係分析
  3. 03コメントと同義語の扱い
  4. 04一時ビューの検証と削除
  5. 05完成したセマンティックビューのクエリ

活用シーン

  1. 01ファクトテーブルとディメンションテーブルからのビュー作成
  2. 02最終ビューの反映前の DDL 検証

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/github/awesome-copilot --skill snowflake-semanticview

インストール後、Claude Code で/snowflake-semanticviewを入力して読み込まれたか確認します。

詳細

Snowflake セマンティックビュー

初回のみのセットアップ

各セマンティックビューリクエストのワークフロー

  1. 対象のデータベース、スキーマ、ロール、ウェアハウス、および最終的なセマンティックビュー名を確認します。
  2. モデルがスタースキーマ(共通のディメンションを持つファクト)に従っていることを確認します。
  3. 公式の構文を使用してセマンティックビューの DDL を作成します:
  4. 各ディメンション、ファクト、メトリックのシノニムとコメントを入力します:
    • まず Snowflake のテーブル/ビュー/列のコメントを読み取ります(優先ソース):
    • コメントまたはシノニムが存在しない場合は、作成してよいか、ユーザーがテキストを提供したいか、承認のために提案を作成すべきかを確認します。
  5. DISTINCT および LIMIT(最大 1000 行)を付けた SELECT ステートメントを使用して、ファクトテーブルとディメンションテーブル間のリレーションシップを発見し、列のデータ型を特定し、列に対してより意味のあるコメントとシノニムを作成します。
  6. 同じデータベースとスキーマを維持したまま、一時的な検証用名(たとえば __tmp_validate を付加)を作成します。
  7. 確定する前に、常に Snowflake CLI を介して DDL を Snowflake に送信して検証します:
    • snow sql を使用して、構成済みの接続でステートメントを実行します。
    • バージョンによってフラグが異なる場合は、snow sql --help を確認し、そこに表示される接続オプションを使用します。
  8. 検証が失敗した場合は、DDL を繰り返し修正し、成功するまで検証ステップを再実行します。
  9. 実際のセマンティックビュー名を使用して、最終的な DDL(create または alter)を適用します。
  10. 最終的なセマンティックビューに対してサンプルクエリを実行し、期待どおりに動作することを確認します。ここに示すように、異なる SQL 構文を使用します: https://docs.snowflake.com/en/user-guide/views-semantic/querying#querying-a-semantic-view 例:
SELECT * FROM SEMANTIC_VIEW(
    my_semview_name
    DIMENSIONS customer.customer_market_segment
    METRICS orders.order_average_value
)
ORDER BY customer_market_segment;
  1. 検証中に作成した一時的なセマンティックビューをクリーンアップします。

シノニムとコメント(必須)

  • シノニムとコメントにはセマンティックビューの構文を使用します:
WITH SYNONYMS [ = ] ( 'synonym' [ , ... ] )
COMMENT = 'comment_about_dim_fact_or_metric'
  • シノニムは情報提供のみを目的として扱います。他の場所でディメンション、ファクト、メトリックを参照するために使用しないでください。
  • シノニムとコメントの優先かつ最初のソースとして Snowflake のコメントを使用します:
  • Snowflake のコメントが存在しない場合は、作成してよいか、ユーザーがテキストを提供したいか、承認のために提案を作成すべきかを確認します。
  • ユーザーの承認なしにシノニムやコメントをでっち上げないでください。

検証パターン(必須)

  • 検証を決して省略しないでください。最終版として提示する前に、常に Snowflake CLI で Snowflake に対して DDL を実行してください。
  • 実際のビューを上書きしないよう、検証には一時的な名前を使用することを推奨します。

CLI 検証の例(テンプレート)

# Replace placeholders with real values.
snow sql -q "<CREATE OR ALTER SEMANTIC VIEW ...>" --connection <connection_name>

お使いのバージョンで CLI が異なる接続フラグを使用する場合は、次を実行します:

snow sql --help

注意事項

  • インストールと接続のセットアップは初回のみのステップとして扱いますが、最初の検証の前に完了していることを確認してください。
  • 最終的なセマンティックビューの定義は、名前を除いて、検証済みの一時的な定義と同一に保ってください。
  • シノニムやコメントを省略しないでください。構文上はオプションであっても、完全性のために必須と考えてください。

コメント