Dataplex のデータ プロファイリングによって、BigQuery テーブル内の列の一般的な統計的特性を特定できます。この情報は、データをより効果的に理解して分析するのに役立ちます。
一般的なデータ値、データ分布、null 数などの情報により、分析を加速させることができます。データ分類と組み合わせると、データ プロファイリングでデータクラスや機密情報を検出し、アクセス制御ポリシーを有効にできます。
また、Dataplex はこの情報を使用して、データ品質チェックのルールを推奨します。
概念モデル
Dataplex によって、データ プロファイリング スキャンを作成することで、データのプロファイルをより理解できます。
次の図は、Dataplex がデータをスキャンして統計的特性を報告する方法を示しています。
データ プロファイリング スキャンは 1 つの BigQuery テーブルに関連付けられており、テーブルをスキャンしてデータ プロファイリングの結果を生成します。データ プロファイリング スキャンでは、いくつかの構成オプションがサポートされています。
構成オプション
このセクションでは、データ プロファイリング スキャンの実行に使用できる構成オプションについて説明します。
スケジュールのオプション
API または Google Cloud コンソールを使用して、定義した頻度またはオンデマンドでデータ プロファイリング スキャンをスケジュールできます。
スコープ
データ プロファイリング スキャンの仕様の一部として、ジョブの範囲を次のいずれかのオプションとして指定できます。
テーブル全体: データ プロファイリング スキャンでテーブル全体がスキャンされます。 サンプリング、行フィルタ、列フィルタは、プロファイリングの統計情報を計算する前にテーブル全体に適用されます。
増分: 指定した増分データがデータ プロファイル スキャンでスキャンされます。増分として使用する
Date
列またはTimestamp
列をテーブルで指定します。通常、これはテーブルが分割される列です。プロファイリング統計を計算する前に、サンプリング、行フィルタ、列フィルタが増分データに適用されます。
データをフィルタする
行フィルタと列フィルタを使用して、スキャン対象のデータをプロファイリング用にフィルタできます。フィルタを使用すると、実行時間とコストを削減し、機密データや不要なデータを除外できます。
行フィルタ: 行フィルタを使用すると、特定の期間内や特定のセグメント(リージョンなど)のデータにフォーカスできます。たとえば、特定の日付より前のタイムスタンプを持つデータを除外できます。
列フィルタ: 列フィルタを使用すると、テーブルに特定の列を追加または除外して、データ プロファイリング スキャンを実行できます。
サンプルデータ
Dataplex では、データ プロファイリング スキャンを実行するために、データからサンプリングするレコードの割合を指定できます。小さなサンプルデータに対してデータ プロファイリング スキャンを作成すると、データセット全体のクエリの実行時間とコストを削減できます。
複数のデータ プロファイリング スキャン
Dataplex では、Google Cloud コンソールを使用して複数のデータ プロファイリング スキャンを一度に作成できます。1 つのデータセットから最大 100 個のテーブルを選択して、データセットごとにデータ プロファイリング スキャンを作成できます。詳細
スキャン結果を BigQuery テーブルにエクスポートする
データ プロファイリング スキャン結果を BigQuery テーブルにエクスポートして、さらに分析を行うことができます。レポートをカスタマイズするには、BigQuery テーブルデータを Looker ダッシュボードに接続します。複数のスキャンで同じ結果テーブルを使用すると、集計レポートを作成できます。
データ プロファイリングの結果
データ プロファイリングの結果には、次の値が含まれます。
列の型 | データ プロファイリングの結果 |
---|---|
数値の列 |
|
文字列の列 |
|
ネストされていないその他の列(日付、時刻、タイムスタンプ、バイナリ、等) |
|
その他のすべてのネストされたまたは複雑なデータ型(Record、Array、JSON など)を指定された列または繰り返しモードの列。 |
|
結果には、すべての実行でスキャンされたレコードの数が含まれます。
レポートとモニタリング
次のレポートと方法を使用して、データ プロファイリングの結果をモニタリングし、分析できます。
BigQuery と Data Catalog ページのソーステーブルで公開されているレポート
Google Cloud コンソールの BigQuery と Data Catalog ページで結果を公開するようにデータ プロファイリング スキャンを構成した場合は、任意のプロジェクトから、[データ プロファイル] タブ内のこれらのページで最新のデータ プロファイリング スキャンの結果を表示できます。
Dataplex の過去のジョブ別レポート
Dataplex の [プロファイル] ページでは、最新のジョブと過去のジョブの詳細レポートを表示できます。これには、列レベルのプロファイル情報と使用された構成が含まれます。
[分析] タブ
Dataplex の [プロファイル] ページで [分析] タブを使用すると、複数のプロファイル ジョブに対する列の統計の傾向を表示できます。たとえば、増分スキャンがある場合は、値の平均値の推移を確認できます。
独自のダッシュボードまたはアナリティクスを構築する
結果を BigQuery テーブルにエクスポートまたは保存するようにデータ プロファイリング スキャンを構成した場合は、Looker Studio などのツールを使用して独自のダッシュボードを構築できます。
制限事項
- データ プロファイリングの結果はタグとして Data Catalog に公開されません。
- データ プロファイリングは、
BIGNUMERIC
を除くすべての列型を持つ BigQuery テーブルでサポートされています。BIGNUMERIC
列を含むテーブルをスキャンすると検証エラーになり、正常に作成されません。 - スキャンする BigQuery テーブルは 300 列以上である必要があります。
料金
Dataplex は、プレミアム処理 SKU を使用してデータ プロファイリングの料金を請求します。詳細については、料金をご覧ください。
データ プロファイリングの結果を Data Catalog に公開することはまだできません。それが可能になると、カタログ メタデータ ストレージの料金と同じレートが適用されます。詳細は、料金をご覧ください。
データ プロファイリング用の Dataplex プレミアム処理は、最低 1 分間分で秒ごとに課金されます。
プロファイリングのスキャンが失敗しても課金されません。
料金は、行数、列数、スキャンされるデータの量、テーブルのパーティショニングとクラスタリングの設定、スキャンの頻度によって異なります。
データ プロファイリング スキャンの費用を削減するには、いくつかのオプションがあります。
- サンプリング
- 増分スキャン
- 列のフィルタリング
- 行フィルタリング
Dataplex プレミアム処理 SKU で、データ プロファイリングの課金を他の課金と分離するには、
goog-dataplex-workload-type
のラベルをDATA_PROFILE
の値で使用します。集計された課金をフィルタリングするには、次のラベルを使用します。
goog-dataplex-datascan-data-source-dataplex-entity
goog-dataplex-datascan-data-source-dataplex-lake
goog-dataplex-datascan-data-source-dataplex-zone
goog-dataplex-datascan-data-source-project
goog-dataplex-datascan-data-source-region
goog-dataplex-datascan-id
goog-dataplex-datascan-job-id
次のステップ
- データ プロファイリングを使用する方法を確認する。
- 自動データ品質について確認する。
- 自動データ品質を使用する方法を確認する。