Unity Catalog メトリクス ビュー
メトリクスビューは、一貫性があり、再利用可能で、管理されたコアビジネスメトリクスを一元的に定義および管理する方法を提供します。 このページでは、メトリクスビュー、メトリクスビューの定義方法、アクセスの制御方法、ダウンストリームツールでのクエリ方法について説明します。
メトリクス ビューとは何ですか?
メトリクスビューは、複雑なビジネスロジックを一元的な定義に抽象化するため、組織は重要業績評価指標を一度定義すれば、ダッシュボード、 Genieスペース、アラートなどのレポートツール全体で一貫して使用できます。 メトリクス ビューは YAML 形式で定義され、 Unity Catalogで登録されます。 これらは、SQL またはカタログ エクスプローラ UI を使用して作成できます。他のテーブルやビューと同様に、メトリクスビューは SQLを使用してクエリできます。

メトリクス ビューを使用する理由
作成時に集計とディメンションをロックする標準ビューとは異なり、メトリクス ビューではメジャー定義がディメンション グループから分離されます。 これにより、メトリクスを一度定義すると、実行時にあらゆるディメンションにわたって柔軟にクエリを実行できるようになり、クエリ エンジンが自動的に正しい計算を生成します。
メトリクス ビューには、次のような重要な利点があります。
- チームやツール間で メトリクス定義を標準化し 、不一致を防ぎます。
- 標準ビューでは安全に再集計できない比率や個別カウントなどの 複雑なメジャーを処理します 。
- 複数レベルの結合 (たとえば、注文 → 製品 → カテゴリ) を備えたスター スキーマとスノーフレーク スキーマをサポートすることで、 柔軟な分析が可能になります 。
- SQL の透明性とガバナンスを維持しながら、 ユーザー エクスペリエンスを簡素化します 。
例
異なる地理的レベルにわたって個別の顧客ごとの収益を分析したいとします。標準ビューでは、グループ(州、地域、国)ごとに個別のビューを作成するか、 GROUP BY CUBE()使用して事前にすべての組み合わせをコンピュートし、後でフィルタリングする必要があります。 これらの回避策は複雑さを増し、パフォーマンスとガバナンスの問題を引き起こします。
メトリクス ビューを使用すると、メトリクス ( 収益の合計を個別の顧客数で割ったもの ) を一度定義するだけで、ユーザーは利用可能な地理的ディメンションごとにグループ化できます。 クエリ エンジンは、データがどのようにグループ化されているかに関係なく、正しい計算を実行するためにバックグラウンドでクエリを書き換えます。
コンポーネント
メトリクス ビューは、データ ソース、または結合ロジックが使用されている場合は複数のソースに基づいて、ディメンションとメジャーを含むメトリクス定義のセットを指定します。 メトリクス ビュー定義のsourceは、ビュー、テーブル、またはSQLクエリにすることができます。 結合はビューとテーブルでのみサポートされます。
ディメンションは、製品名、顧客タイプ、地域などのデータを整理およびフィルター処理するカテゴリ属性です。ディメンションは、メジャーを効果的に分析するために必要なラベルとグループ化を提供します。
メジャーは、通常、 SUM()やAVG()などの集計関数を使用してビジネス アクティビティを要約する値です。メジャーは、ソース テーブルまたはビュー内の 1 つ以上の基本フィールドに適用することも、以前に定義されたディメンションとメジャーを参照することもできます。メジャーはディメンションとは独立して定義されるため、ユーザーは実行時に任意のディメンションにわたってメジャーを集計できます。 たとえば、 total_revenueメジャーを定義すると、 customer 、 supplier 、またはregionによる集計が可能になります。メジャーは、レポートやダッシュボードで KPI としてよく使用されます。
メトリクス ビューにアクセスして編集する
メトリクス ビューはUnity Catalogに登録されます。 メトリクス ビューに対して少なくとも SELECT 権限を持つユーザーは、カタログ エクスプローラー UI を使用して詳細にアクセスできます。
カタログエクスプローラーUIで詳細を表示する
カタログ エクスプローラーでメトリクス ビューを表示するには:
- サイドバー
カタログ をクリックします。
- 利用可能なデータを参照するか、検索バーを使用してメトリクス ビューを名前で検索します。
- メトリクス ビューの名前をクリックします。
- タブを使用して、メトリクス ビューに関する情報を表示します。
- 概要 : メトリックで定義されているすべてのメジャーとディメンション、および定義されているすべてのセマンティック メタデータを表示します。
- 詳細 : メトリクス ビューの完全な YAML 定義を表示します。
- 権限 : メトリックス ビューにアクセスできるすべてのプリンシパル、その権限、および権限が定義されているデータベース オブジェクトを表示します。
- リネージ : テーブル、ノートブック、ダッシュボード、その他のメトリクス ビューなどの関連資産を表示します。
- 知見 : メトリクス ビューで行われたクエリと、過去 30 日間にメトリクス ビューにアクセスしたユーザーが、頻度の高い順にリストされ、最も頻度の高いものが上に表示されます。
メトリクス ビューのクエリ
標準ビューと同じ方法でメトリクス ビューをクエリできます。 サポートされているランタイムを実行しているSQLウェアハウスまたはその他のコンピュート リソースに接続されているSQLエディターからクエリを実行します。
クエリのメジャーとディメンション
メトリクス ビュー クエリ内のすべてのメジャー評価では、 MEASURE集計関数を使用する必要があります。 完全な詳細と構文については、 measure集計関数を参照してください。
メトリクス ビューは、 SELECT *クエリをサポートしていません。 メジャーは、 MEASURE()関数を使用して名前で明示的に参照する必要がある集計であるため、クエリするディメンションとメジャーを指定する必要があります。
クエリ時の JOIN はサポートされていません。テーブルを結合するには:
- メトリクス ビューを作成する YAML 仕様で JOIN を定義します。 「メトリクス ビューでの結合の使用」を参照してください。
- メトリクス ビューをクエリするときは、共通テーブル式 (CTE) を使用してソースを結合します。 共通テーブル式 (CTE)を参照してください。
クエリの結果として詳細を表示する
次のクエリは、メジャー、ディメンション、結合、セマンティック メタデータを含む、メトリクス ビューの完全な YAML 定義を返します。 AS JSON問題はオプションです。 完全な構文の詳細については、 JSON 形式の出力を参照してください。
DESCRIBE TABLE EXTENDED <catalog.schema.metric_view_name> AS JSON
完全な YAML 定義は、結果の [テキストの表示] フィールドに表示されます。各列には、セマンティック メタデータを保持する メタデータ フィールドが含まれています。
メトリクス ビューの消費
また、 Databricks ワークスペース全体でメトリクスビューを使用することもできます。 詳細については、関連するドキュメントを参照してください。
制限
メトリクスビューには、以下の制限が適用されます。
- メトリクス ビューは Delta Sharingをサポートしていません。
- レイクハウスモニタリングはサポートされていません。