View a markdown version of this page

でのデータ品質の検証AWS Glue DataBrew - AWS Glue DataBrewデベロッパーガイド

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

でのデータ品質の検証AWS Glue DataBrew

データセットの品質を確保するために、ルールセットでデータ品質ルールのリストを定義できます。ルールセットは、さまざまなデータメトリクスを期待値と比較する一連のルールです。ルールの基準のいずれかが満たされない場合、ルールセット全体は検証に失敗します。その後、ルールごとに個別の結果を検査できます。検証に失敗するルールについては、必要な修正と再検証を行うことができます。

ルールの例は次のとおりです。

  • 列の値は 0~100 "APY"です

  • 列の欠損値が 5% group_nameを超えない

個々の列に各ルールを定義することも、選択した複数の列に個別に適用することもできます。次に例を示します。

  • 列 、"rate"、 の最大値は 100 "pay"を超えることはありません"increase"

ルールは、複数のシンプルなチェックで構成できます。これらをすべて true にするか、いずれかにするかを定義できます。次に例を示します。

  • 列の値は、"asin-"列の値の長さ"ProductId"が 32 で始まる"ProductId"必要があります。

比較する値が 1 つnumber of duplicate valuesしかない maxmin、 などの集計値、または列の各行の非集計値に対してルールを検証できます。後者の場合は、 などの「合格」しきい値を定義することもできますvalue in columnA > value in columnB for at least 95% of rows

プロファイル情報と同様に、列レベルのデータ品質ルールは、文字列や数値などの単純な型の列に対してのみ定義できます。配列や構造など、複雑なタイプの列のデータ品質ルールを定義することはできません。プロファイル情報の操作の詳細については、「」を参照してくださいAWS Glue DataBrewプロファイルジョブの作成と操作

データ品質ルールの検証

ルールセットを定義したら、検証のためにプロファイルジョブに追加できます。データセットには複数のルールセットを定義できます。

たとえば、1 つのルールセットに、許容できる条件が最小限であるルールが含まれている場合があります。そのルールセットの検証に失敗すると、データがそれ以上使用できない可能性があります。たとえば、機械学習トレーニングに使用されるデータセットのキー列に値が欠落しています。より厳密なルールで 2 番目のルールセットを使用して、データセットの品質が十分で、クリーンアップを必要としないかどうかを確認できます。

プロファイルジョブ設定で、特定のデータセットに定義された 1 つ以上のルールセットを適用できます。プロファイルジョブを実行すると、データプロファイルに加えて検証レポートが生成されます。検証レポートは、プロファイルデータと同じ場所で使用できます。プロファイル情報と同様に、DataBrew コンソールで結果を調べることができます。データセットの詳細ビューで、データ品質タブを選択して結果を表示します。プロファイル情報の操作の詳細については、「」を参照してくださいAWS Glue DataBrewプロファイルジョブの作成と操作

検証結果に基づくアクション

DataBrew プロファイルジョブが完了すると、DataBrew はそのジョブ実行の詳細を含む Amazon CloudWatch イベントを送信します。また、データ品質ルールを検証するようにジョブを設定した場合、DataBrew は検証されたルールセットごとにイベントを送信します。イベントには、結果 (SUCCEEDEDFAILED、または ERROR) と、詳細なデータ品質検証レポートへのリンクが含まれます。その後、検証のステータスに応じて次のアクションを呼び出すことで、さらなるアクションを自動化できます。Amazon SNS 通知、AWS Lambda関数呼び出しなど、ターゲットアクションにイベントを接続する方法の詳細については、「Amazon EventBridge の開始方法」を参照してください。

DataBrew 検証結果イベントの例を次に示します。

{ "version": "0", "id": "fb27348b-112d-e7c2-560d-85e7c2c09964", "detail-type": "DataBrew Ruleset Validation Result", "source": "aws.databrew", "account": "123456789012", "time": "2021-11-18T13:15:46Z", "region": "us-east-1", "resources": [], "detail": { "datasetName": "MyDataset", "jobName": "MyProfileJob", "jobRunId": "db_f07954d20d083de0c1fc1eee11498d8635ee5be4ca416af27d33933e91ff4e6e", "rulesetName": "MyRuleset", "validationState": "FAILED", "validationReportLocation": "s3://MyBucket/MyKey/MyDataset_f07954d20d083de0c1fc1eee11498d8635ee5be4ca416af27d33933e91ff4e6e_dq-validation-report.json" } }

などのイベントの属性、sourceおよび 属性のネストされたプロパティを使用してdetail-type、Amazon Eventbridge でイベントパターンdetailを作成できます。 https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html#eb-create-patternたとえば、DataBrew ジョブから失敗したすべての検証に一致するイベントパターンは次のようになります。

{ "source": ["aws.databrew"], "detail-type": ["DataBrew Ruleset Validation Result"], "detail": { "validationState": ["FAILED"] } }

ルールセットを作成し、そのルールを検証する例については、「」を参照してくださいデータ品質ルールを使用したルールセットの作成。DataBrew での CloudWatch イベントの操作の詳細については、「」を参照してください。 CloudWatch Events による DataBrew の自動化

データ品質ルールの検証結果の検査と更新

プロファイルジョブが完了したら、データ品質ルールの検証結果を表示し、必要に応じてルールを更新できます。

データ品質ルールの検証データを表示するには
  1. DataBrew コンソールで、データプロファイルの表示を選択します。これにより、データセットのデータプロファイルの概要タブが表示されます。

  2. データ品質ルールタブを選択します。このタブでは、すべてのデータ品質ルールの結果を表示できます。

  3. 個々のルールを選択すると、そのルールの詳細が表示されます。

検証に失敗したルールについては、必要な修正を行うことができます。

データ品質ルールを更新するには
  1. ナビゲーションペインで、DQ RULES を選択します。

  2. データ品質ルールセット名で、編集する予定のルールを含むデータセットを選択します。

  3. 変更するルールを選択し、編集を選択します。

  4. 必要な修正を行い、ルールセットの更新を選択します。

  5. ジョブを再実行します。すべての検証に合格するまで、このプロセスを繰り返します。