メトリクスビューを作成する
プレビュー
この機能は パブリック プレビュー段階です。
メトリクス ビューを作成してビジネス ロジックを一元化し、レポート サーフェス全体で主要業績評価指標を一貫して定義する方法について説明します。 Unity Catalog メトリクスビューを参照してください。このチュートリアルでは、Catalog Explorer UIを使用してメトリクスビューを作成する方法を示します。 SQLを使用してメトリクスビューを定義するには、CREATE VIEWを参照してください。
前提 条件
- ソース・データ・オブジェクトに対する
SELECT
権限が必要です。 - メトリクスビューを作成するスキーマの
CREATE TABLE
権限とUSE SCHEMA
権限が必要です。 - また、スキーマの親カタログに対する
USE CATALOG
権限も必要です。 - 16.4 以降を実行している SQLウェアハウスまたはその他のコンピュート リソースに対するアクセス許可を使用できます Databricks Runtime 。
メタストア管理者またはカタログ所有者は、これらの特権をすべて付与できます。スキーマの所有者または MANAGE
権限を持つユーザーは、スキーマに対する USE SCHEMA
権限と CREATE TABLE
権限を付与できます。
ステップ 1: データソースを選択する
メトリクスビューは、テーブル、ビュー、または SQL クエリに基づくことができます。このチュートリアルでは、samples
カタログのtpch
スキーマのorders
テーブルを使用します。
- ワークスペース
サイドバーで「 カタログ 」をクリックします。
- スキーマブラウザの検索バーを使用して、
samples.tpch.orders
テーブルを検索します。 注文 をクリックすると、テーブルの詳細が表示されます。 - 「メトリクス・ビュー >作成 」をクリックします。YAML エディターが開きます。
ステップ 2: メトリクスを定義する
このメトリクスビューのYAML定義には、以下のトップレベルフィールドが含まれます。
version
: デフォルトは0.1
です。これがメトリクスビューの仕様のバージョンです。- ソース:
samples.tpch.orders
は完全修飾テーブル名です。このメトリクスビューのすべてのディメンションとメジャーは、指定されたテーブルをデータソースとして使用します。 filter
: このビューに対するすべてのクエリは、1990 年 1 月 1 日以降のo_orderdate
レコードを返します。dimensions
:Order Month
、Order Status
、Order Priority
はディメンションとして定義されます。measures
: 4 つのメジャー (Order Count
、Total Revenue
、Total Revenue per Customer
、Total Revenue for Open Orders
) が定義され、それぞれに集計式が指定されています。
-
エディターの内容を次の定義で置き換えます。
YAMLversion: 0.1
source: samples.tpch.orders
filter: o_orderdate > '1990-01-01'
dimensions:
- name: Order Month
expr: DATE_TRUNC('MONTH', o_orderdate)
- name: Order Status
expr: CASE
WHEN o_orderstatus = 'O' then 'Open'
WHEN o_orderstatus = 'P' then 'Processing'
WHEN o_orderstatus = 'F' then 'Fulfilled'
END
- name: Order Priority
expr: SPLIT(o_orderpriority, '-')[1]
measures:
- name: Order Count
expr: COUNT(1)
- name: Total Revenue
expr: SUM(o_totalprice)
- name: Total Revenue per Customer
expr: SUM(o_totalprice) / COUNT(DISTINCT o_custkey)
- name: Total Revenue for Open Orders
expr: SUM(o_totalprice) FILTER (WHERE o_orderstatus='O') -
(オプション)メトリクスビューの名前を変更します。 メトリクスビューの名前は、定義の上のテキストフィールドに自動的に入力されます。 デフォルトの名前はそのまま使用することも、編集することもできます。メトリクスビューの名前には、英数字とアンダースコアを含めることができます。
-
(オプション)スキーマのドロップダウンメニューを使用して、メトリクスビューを保存するスキーマを選択します。デフォルトでは、選択したスキーマはテーブルが存在する場所と同じです。
-
作成 をクリックします。
メトリクスビューは、ビューに対して少なくとも SELECT
の権限を持つすべてのユーザーが使用できる状態です。 アクセス許可の管理の詳細については、「 Unity Catalog の特権とセキュリティ保護可能なオブジェクト 」を参照してください。ユーザーがこのビューをクエリする方法の詳細については、「 メトリクス ビューのクエリ」を参照してください。メトリクスビューを作成した後、開いた [概要 ] で、ソース、フィルター、および指定したメジャーとディメンションを確認できます。
ステップ 3: 説明、コメント、タグを追加する
[概要] タブから、次の操作を行います。
- [ 説明の追加 ] をクリックして、ビューのメタデータに説明を追加します。
- コメントを追加するには、コメントを追加する行の [コメント] 列にカーソルを合わせます。
- メジャーまたはディメンションにタグを追加するには、タグを追加する タグ 列にカーソルを合わせます。
- ビューにタグを追加するには、ページの右側にある [タグの追加 ] をクリックします。
ステップ 4: (オプション) YAML 定義を編集する
[ 詳細 ] タブから YAML 定義を表示し、YAML エディターを開くことができます。
- [詳細 ] をクリックします。
- クリック ...完全な定義を表示するための行が増え ました。
- [編集 ] をクリックして YAML エディターを開きます。
- ディメンションまたはメジャーを追加または削除します。 「保存 」をクリックします。
ステップ5:(オプション)権限を設定する
メトリクス ビューは、他の Unity Catalog セキュリティ保護可能なオブジェクトと同じ階層アクセス許可モデルを尊重します。 メトリクスビューが、目的のコンシューマーが読み取りアクセス権を持つスキーマに保存されている場合、新しいアクセス許可は必要ありません。メトリクスビューの権限は、 Permissions タブから明示的に割り当てることができます。
- [ アクセス許可 ]をクリックします。
- UI を使用して、他の Databricks ユーザーの権限を付与および取り消します。
詳細については、「 Unity Catalog メタストア内のオブジェクトに対するアクセス許可の付与」を参照してください。
メトリクスビューのクエリ
ワークスペースの組み込み エディター 、または 上のデータにアクセスできる任意の エディターから、メトリクスSQLSQLDatabricksビューをクエリできます。メトリクス ビューをクエリするには、 SQLウェアハウスまたは 16.4 以降を実行している他のコンピュート リソース Databricks Runtime アタッチされている必要があります。
次のサンプル クエリでは、リストされている 3 つのメジャーを評価し、 Order Month
と Order Status
で集計します。Order Month
でソートされた結果を返します。
すべてのメジャーは、 MEASURE
関数でラップする必要があります。measure
集計関数を参照してください。
SELECT
`Order Month`,
`Order Status`,
MEASURE(`Order Count`),
MEASURE(`Total Revenue`),
MEASURE(`Total Revenue per Customer`)
FROM
orders_metric_view
GROUP BY ALL
ORDER BY 1 ASC
次のステップ
- SQL を使用して、メトリクス ビューを定義します。
- ステートメント実行APIを使用して、メトリクス ビューSQLステートメントを実行します。
- アラートを設定します。
- メトリクス ビューをダッシュボードに追加します。
- Genieスペースにメトリクス ビューを追加します。
- メトリクス ビューのトラブルシューティングを行います。