スキップしてコンテンツを表示

AWS Glue Data Quality のルールに関する問題をトラブルシューティングする方法を教えてください。

所要時間2分
0

AWS Glue Data Quality のルールとルールセットに関する問題をトラブルシューティングしたいです。

解決策

AWS Glue Data Quality のルールとルールセットで、次の問題が発生する場合があります。

  • キーマップがデータフレームに適していない。
  • 設定した値が制約要件を満たしていない。
  • 列検証ルールに誤った正規表現がある。
  • AWS Glue Data Quality ジョブの実行速度が遅い。
  • AWS Glue オブジェクトで、start_data_quality_rule_recommendation_run 属性が欠けている。

問題に応じて、次の手順を実行します。

キーマップがデータフレームに適していない

DataSetMatch ルールを実行すると、次のエラーメッセージが表示されます。

"Provided Key Map Not Suitable for Given DataFrames" 

このエラーを解決するには、次の手順を実行します。

  • 結合キーがプライマリデータセットと参照データセットの両方で一意であることを確認します。結合キーは、重複を含まない主キーである必要があります。
  • キー列に NULL 値が含まれていないことを確認します。
  • (オプション) クリーンなキー列を持つ別のデータセットを使用します。

次の DatasetMatch ルールの例では、example_a と example_b には NULL ではない一意の値のみを含める必要があります。

Rules = [  
    DatasetMatch "reference" "example_a,example_b" = 1  
]

設定した値が制約要件を満たしていない

Data Quality チェックを実行すると、次のエラーメッセージが表示されます。

"Value does not meet constraint requirement"

このエラーを解決するには、次の手順を実行します。

  • ルール設定をレビューし、列の値の制約がデータの特性と一致することを確認します。例えば、データの一意性をチェックする場合は、列に重複する値がないことを確認します。
  • チェックするデータは、ルールで指定された形式に従っている必要があります。
  • ルールで指定された制約を満たすために、データセットをクリーンアップします。

次の DataSetMatch ルールの例では、example_a には NULL ではない一意の値のみが含まれている必要があります。

Rules = [  
    DatasetMatch "reference" "example_a,example_a" = 1  
]

列検証ルールに誤った正規表現がある

ColumnValues ルールを使用して列フォーマットを検証する場合は、次のベストプラクティスを参照してください。

  • データ形式に合った正規表現を使用します。次のルール例は、yyyy-mm-dd および yyyy/mm/dd 形式の日付を照合します。

    Rules = [  
        ColumnValues "test_date" matches "^(19|20)\d\d[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])"  
    ]

    一方、次のルール例は、yyyy-mm-dd 形式の日付のみを照合します。

    Rules = [  
        ColumnValues "test_date" matches "^(19|20)\d\d[-](0[1-9]|1[012])[-](0[1-9]|[12][0-9]|3[01])"  
    ]
  • 正規表現を適用する前に、オンラインツールまたは Python ライブラリを使用して、正規表現をサンプルデータに対してテストしてください。

  • 正規表現が、想定する列形式と一致することを確認してください。パターンに複数のフォーマットを含めるために、パターンを調整します。

AWS Glue Data Quality ジョブの実行速度が遅い

AWS Glue Data Quality ジョブの実行時のパフォーマンスが低い場合は、次の手順を実行します。

AWS Glue オブジェクトで、'start_data_quality_rule_recommendation_run' 属性が欠けている

次のエラーメッセージが表示されます。

"AttributeError: 'Glue' object has no attribute "start_data_quality_rule_recommendation_run""

AWS Glue オブジェクトに start_data_quality_rule_recommendation_run 属性がない場合は、次のキーと値のペアをジョブのパラメータに追加します。

Key: —additional-python-modules   
Value: boto3==1.28.26

関連情報

AWS Glue Data Quality ルールを作成し、そのパフォーマンスを最適化する方法を教えてください。

AWS公式更新しました 2年前
コメントはありません

関連するコンテンツ