

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

# でのデータ品質の検証AWS Glue DataBrew
<a name="profile.data-quality-rules"></a>

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

ルールの例は次のとおりです。
+ 列の値は 0～100 `"APY"`です
+ 列の欠損値が 5% `group_name`を超えない

個々の列に各ルールを定義することも、選択した複数の列に個別に適用することもできます。次に例を示します。
+ 列 、`"rate"`、 の最大値は 100 `"pay"`を超えることはありません`"increase"`。

ルールは、複数のシンプルなチェックで構成できます。これらをすべて true にするか、いずれかにするかを定義できます。次に例を示します。
+ 列の値は、`"asin-"`列の値の長さ`"ProductId"`が 32 で始まる`"ProductId"`必要があります。

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

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

## データ品質ルールの検証
<a name="profile.data-quality-rules-validating"></a>

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

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

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

## 検証結果に基づくアクション
<a name="profile.data-quality-rules-results-acting"></a>

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

 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](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"]
  }
}
```

ルールセットを作成し、そのルールを検証する例については、「」を参照してください[データ品質ルールを使用したルールセットの作成](profile.data-quality-rules-create.md)。DataBrew での CloudWatch イベントの操作の詳細については、「」を参照してください。 [CloudWatch Events による DataBrew の自動化](monitoring.cloudwatch-events.md)

## データ品質ルールの検証結果の検査と更新
<a name="profile.data-quality-ruleset-inspect-results"></a>

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

**データ品質ルールの検証データを表示するには**

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

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

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

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

**データ品質ルールを更新するには**

1. ナビゲーションペインで、**DQ RULES** を選択します。

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

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

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

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