この記事では、Databricks UI を使用してデータ プロファイルを作成する方法について説明します。 API を使用することもできます。
Databricks UI にアクセスするには、次の操作を行います。
ワークスペースの左側のサイドバーで、[
をクリックします。 カタログ エクスプローラーを開きます。
プロファイルするテーブルに移動します。
[ 品質 ] タブをクリックします。
このスキーマに対して 異常検出 が有効になっていない場合は、[ 有効] をクリックします。
このスキーマに対して異常検出が有効になっている場合は、[ 構成] をクリックします。
[ データ品質の監視 ] ダイアログの [ データ プロファイル ] フィールドで、[ 構成] をクリックします。
ダイアログで、 プロファイルの種類を選択します。 次のセクションでは、プロファイルの種類のオプションと、各種類の追加の選択について説明します。
Profiling
[ プロファイルの種類 ] ドロップダウン メニューから、作成するプロファイルの種類を選択します。 プロファイルの種類を表に示します。
| プロファイルの種類 | Description |
|---|---|
| 時系列プロファイル | 時間の経過と同時に測定された値を含むテーブル。 このテーブルにはタイムスタンプ列が含まれています。 |
| スナップショット プロファイル | Delta 管理テーブル、外部テーブル、ビュー、マテリアライズド ビュー、またはストリーミングテーブル。 |
| 推論プロファイル | 機械学習の分類または回帰モデルによって出力される予測値を含むテーブル。 このテーブルには、タイムスタンプ、モデル ID、モデル入力 (特徴)、モデル予測を含む列、および一意の観測 ID とグラウンド トゥルース ラベルを含む省略可能な列が含まれます。 また、人口統計情報などのメタデータを含めることもできます。このメタデータはモデルへの入力として使用されませんが、公平性や偏りの調査やその他のタスクに役立つ場合があります。 |
TimeSeriesまたはInferenceを選択した場合は、追加のパラメーターが必要であり、以降のセクションで説明します。
注
- 時系列プロファイルまたは推論プロファイルを初めて作成すると、プロファイルは作成の 30 日前のデータのみを分析します。 プロファイルが作成されると、すべての新しいデータが処理されます。
- 具体化されたビューで定義されているモニターは、増分処理をサポートしていません。
ヒント
TimeSeriesプロファイルとInference プロファイルの場合は、テーブルで変更データ フィード (CDF) を有効にすることをお勧めします。 CDF を有効にすると、更新のたびにテーブル全体を再処理するのではなく、新しく追加されたデータのみが処理されます。 これにより、多くのテーブルでプロファイリングをスケーリングする際の実行効率が向上し、コストが削減されます。
TimeSeries プロフィール
TimeSeries プロファイルの場合は、次の項目を選択する必要があります。
- 時間を超えてウィンドウ内のデータをパーティション分割する方法を決定する メトリックの細分性 を指定します。
-
Timestamp 列 (タイムスタンプを含むテーブル内の列) を指定します。 タイムスタンプ列のデータ型は、
TIMESTAMPまたはto_timestampPySpark 関数を使用してタイムスタンプに変換できる型である必要があります。
Inference プロフィール
Inference プロファイルの場合、粒度とタイムスタンプに加えて、次の選択を行う必要があります。
- 問題の 種類 (分類または回帰) を選択します。
- 予測 列 (モデルの予測値を含む列) を指定します。
- 必要に応じて、モデル予測のグラウンド トゥルースを含む列である Label 列を指定します。
- モデル ID 列 (予測に使用されるモデルの ID を含む列) を指定します。
詳細オプション
[ 詳細オプション ] セクションでは、スケジュールの設定、電子メール通知の追加、カスタム メトリックとスライス式の追加、既定のプロファイル構成の変更を行うことができます。
スケジュール
スケジュールに基づいて実行するプロファイルを設定するには、[スケジュールに従 って更新 ] を選択し、プロファイルを実行する頻度と時間を選択します。 プロファイルを自動的に実行しない場合は、[ 手動で更新] を選択します。 [手動で更新] を選択した場合は、後で [品質] タブからメトリックを更新できます。
Notifications
プロファイルの電子メール通知を設定するには、通知する電子メールを入力し、有効にする通知を選択します。 通知イベントの種類ごとに最大 5 つの電子メールがサポートされます。
Metrics
[ メトリック ] セクションでは、次の既定の設定を変更できます。
メトリック テーブル スキーマ名: プロファイルによって作成されたメトリック テーブルが格納される Unity カタログ スキーマ。 この場所は {catalog} 形式である必要があります。{schema}。 既定では、これはプロファイルテーブルと同じスキーマの場所に設定されます。 別の場所を指定できます。
資産ディレクトリ: データ プロファイル資産を格納する既存のディレクトリへの絶対パス。 既定では、資産は既定のディレクトリ "/Users/{user_name}/databricks_lakehouse_monitoring/{table_name}" に格納されます。 このフィールドに別の場所を入力すると、指定したディレクトリの "/{table_name}" にアセットが作成されます。 このディレクトリは、ワークスペース内の任意の場所に置くことができます。 組織内で共有することを目的としたプロファイルの場合は、"/Shared/" ディレクトリ内のパスを使用できます。
このフィールドを空白のままにすることはできません。
次の設定を指定することもできます。
- Unity カタログのベースライン テーブル名: 比較用のベースライン データを含むテーブルまたはビューの名前。
-
メトリック スライス式: スライス式を使用すると、テーブル全体に加えてプロファイリングするテーブルのサブセットを定義できます。 スライス式を作成するには、[式の 追加 ] をクリックし、式の定義を入力します。 たとえば、式
"col_2 > 10"では、col_2 > 10用とcol_2 <= 10用の 2 つのスライスが生成されます。 別の例として、式"col_1"では、col_1の一意の値ごとに 1 つのスライスが生成されます。 データは各式によって個別にグループ化され、述語とその補数ごとに個別のスライスが作成されます。 -
カスタム メトリック: カスタム メトリックは、組み込みのメトリックと同様にメトリック テーブルに表示されます。
カスタム メトリックを構成するには、[カスタム メトリックの 追加] をクリックします。
- カスタム メトリックの 名前 を入力します。
- カスタム メトリックの種類を選択 します。
Aggregate、Derived、またはDriftから選択します。 - [入力列] のドロップダウン リストから、メトリックを適用する列を選択します。
- [ 出力の種類 ] フィールドで、メトリックの Spark データ型を選択します。
- [ 定義 ] フィールドに、カスタム メトリックを定義する SQL コードを入力します。
UI でプロファイル設定を編集する
プロファイルを作成したら、[品質] タブの [構成] をクリックしてプロファイルの設定を変更できます。
ダイアログの [ データ プロファイル ] セクションで、[ 構成] をクリックします。
UI でプロファイルの結果を更新して表示する
プロファイルを手動で実行するには、[ 更新履歴の表示] をクリックします。 ダイアログが開き、以前のすべてのプロファイルが表示されます。 [ メトリックの更新 ] をクリックしてプロファイルの更新をトリガーします。
プロファイル メトリック テーブルに格納される統計の詳細については、「メトリック テーブルの 監視」を参照してください。 メトリック テーブルは Unity カタログ テーブルです。 ノートブックまたは SQL クエリ エクスプローラーでクエリを実行し、カタログ エクスプローラーで表示できます。
プロファイル出力へのアクセスを制御する
プロファイルによって作成されたメトリック テーブルとダッシュボードは、プロファイルを作成したユーザーによって所有されます。 Unity カタログ権限を使用して、メトリック テーブルへのアクセスを制御できます。 ワークスペース内でダッシュボードを共有するには、ダッシュボードの右上にある [ 共有 ] ボタンをクリックします。
UI からプロファイルを削除する
UI からプロファイルを削除するには、UI の プロファイル設定の編集の手順に 従って、[プロファイルの 更新 ] ダイアログを開きます。 [ 更新 ] ドロップダウン メニューの [ 削除] を選択します。