次の方法で共有


カタログ エクスプローラー UI を使用してメトリック ビューを作成する

メトリック ビューを作成してビジネス ロジックを一元化し、レポート サーフェイス全体で主要業績評価指標を一貫して定義する方法について説明します。 このチュートリアルでは、カタログ エクスプローラー UI を使用してメトリック ビューを作成する方法について説明します。 SQL を使用してメトリック ビューを定義するには、「」を参照してください。

[前提条件]

  • ソース データ オブジェクトに対する SELECT 権限が必要です。
  • メトリック ビューを作成するスキーマには、 CREATE TABLE 権限USE SCHEMA 権限が必要です。
  • また、スキーマの親カタログに対する USE CATALOG 権限も必要です。
  • Databricks Runtime 17.2 以降を実行している SQL ウェアハウスまたはその他のコンピューティング リソースに対するアクセス許可を使用できます。

メタストア管理者またはカタログ所有者は、これらすべての権限を許可できます。 MANAGE 権限を持つスキーマ所有者またはユーザーは、スキーマに対する USE SCHEMA 権限と CREATE TABLE 権限を付与できます。

手順 1: データ ソースを選択する

メトリック ビューは、テーブル、ビュー、または SQL クエリに基づいて作成できます。 このチュートリアルでは、orders カタログのsamples スキーマのtpch テーブルを使用します。

  1. [データ] アイコンをクリックします。ワークスペースサイドバーのカタログ
  2. スキーマ ブラウザーの検索バーを使用して、 samples.tpch.orders テーブルを見つけます。 [注文] をクリックすると、テーブルの詳細が表示されます。
  3. [ 作成>メトリック ビュー] をクリックします。 YAML エディターが開きます。

手順 2: メトリックを定義する

このメトリック ビューの YAML 定義には、次の最上位フィールドが含まれています。

  • version: 既定値は 1.1 です。 これは、メトリック ビューの仕様のバージョンです。
  • source:samples.tpch.orders は完全修飾テーブル名です。 このメトリック ビューのすべてのディメンションとメジャーは、指定されたテーブルをデータ ソースとして使用します。
  • filter: このビューのすべてのクエリは、1990 年 1 月 1 日以降に o_orderdate を持つレコードを返します。
  • dimensions:Order MonthOrder Status、および Order Priority はディメンションとして定義されます。
  • measures: 4 つのメジャー (Order CountTotal RevenueTotal Revenue per Customer、および Total Revenue for Open Orders) が定義され、それぞれに集計式が指定されています。
  1. [カタログとスキーマ] ドロップダウン メニューを使用して、メトリック ビューを保存する場所を選択します。 クエリを実行するユーザーには、メトリック ビューにアクセスするための少なくとも USE CATALOG 権限と USE SCHEMA 特権が必要です。

  2. メトリック ビューの名前を入力します。 メトリック ビュー名には、英数字とアンダースコアを含めることができます。

  3. エディターの内容を次の定義に置き換えます。

    version: 1.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')
    
  4. Create をクリックしてください。

メトリック ビューは、メトリック ビューに対して少なくとも SELECT の特権を持つユーザーが使用できる状態です。 アクセス許可の管理の詳細については、 Unity カタログの権限とセキュリティ保護可能なオブジェクト に関するページを参照してください。 ユーザーがこのメトリック ビューに対してクエリを実行する方法の詳細については、「メトリック ビューのクエリ」を参照してください。

メトリック ビューを作成したら、開いた [概要 ] タブで、ソース、フィルター、および指定したメジャーとディメンションを確認できます。

手順 3: 説明、コメント、タグを追加する

説明、コメント、タグは、YAML 定義または [概要 ] タブで追加できます。

YAML を使用して追加するには (バージョン管理に推奨):

commentフィールドを YAML 定義に直接追加します。 構文の詳細については、 バージョン仕様の変更ログ を参照してください。

version: 1.1
comment: 'Orders metrics for revenue analysis'

dimensions:
  - name: Order Month
    expr: DATE_TRUNC('MONTH', o_orderdate)
    comment: 'Month when the order was placed'

measures:
  - name: Total Revenue
    expr: SUM(o_totalprice)
    comment: 'Sum of all order prices'

[概要] タブを使用して追加するには:

  • [ 説明の追加] をクリックして、メトリック ビューのメタデータに説明を追加します。
  • コメントを追加するには、コメントを追加する行の [コメント ] 列にカーソルを合わせます。
  • メジャーまたはディメンションにタグを追加するには、タグを追加する [タグ ] 列にカーソルを合わせます。
  • メトリック ビューにタグを追加するには、ページの右側にある [タグの追加 ] をクリックします。

手順 4: (省略可能) YAML 定義を編集する

YAML 定義を表示し、[ 詳細 ] タブから YAML エディターを開くことができます。

  1. [詳細]をクリックします。
  2. ...より多くの行をクリックして、完全な定義を表示します。
  3. [ 編集] をクリックして YAML エディターを開きます。
  4. ディメンションまたは測定基準を追加または削除します。 [保存] をクリックします。

手順 5: (省略可能) アクセス許可を設定する

メトリック ビューでは、他の Unity カタログセキュリティ保護可能オブジェクトと同じ階層アクセス許可モデルが考慮されます。 メトリック ビューが、対象のコンシューマーが読み取りアクセス権を持つスキーマに格納されている場合、新しいアクセス許可は必要ありません。 メトリック ビューのアクセス許可は、[ アクセス許可 ] タブから明示的に割り当てることができます。

  1. [アクセス許可] をクリックします。
  2. UI を使用して、他の Azure Databricks ユーザーのアクセス許可を付与および取り消します。

詳細については、「 オブジェクトに対するアクセス許可を付与する」を参照してください。

メトリック ビューのクエリを実行する

メトリック ビューは、ワークスペースの組み込みの SQL エディター または Azure Databricks 上のデータにアクセスできる任意の SQL エディターからクエリを実行できます。 メトリック ビューのクエリを実行するには、Databricks Runtime 17.2 以降を実行している SQL ウェアハウスまたはその他のコンピューティング リソースにアタッチされている必要があります。

次のサンプル クエリでは、挙げられた3つのメジャーを評価し、Order MonthOrder 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 を使用してメトリック ビューを作成したので、次の関連トピックを確認します。

メトリック ビューのクエリと使用

高度なメトリック ビュー機能

代替の作成方法

ガバナンスとセキュリティ