本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
EvaluateDataQuality 类
根据 DynamicFrame
中的数据评估数据质量规则集,并返回一个包含数据质量评估结果的新 DynamicFrame
。
示例
以下示例代码演示了如何评估 DynamicFrame
的数据质量,然后查看数据质量结果。
from awsglue.transforms import * from pyspark.context import SparkContext from awsglue.context import GlueContext from awsgluedq.transforms import EvaluateDataQuality #Create Glue context sc = SparkContext.getOrCreate() glueContext = GlueContext(sc) # Define DynamicFrame legislatorsAreas = glueContext.create_dynamic_frame.from_catalog( database="legislators", table_name="areas_json") # Create data quality ruleset ruleset = """Rules = [ColumnExists "id", IsComplete "id"]""" # Evaluate data quality dqResults = EvaluateDataQuality.apply( frame=legislatorsAreas, ruleset=ruleset, publishing_options={ "dataQualityEvaluationContext": "legislatorsAreas", "enableDataQualityCloudWatchMetrics": True, "enableDataQualityResultsPublishing": True, "resultsS3Prefix": "amzn-s3-demo-bucket1", }, ) # Inspect data quality results dqResults.printSchema() dqResults.toDF().show()
root |-- Rule: string |-- Outcome: string |-- FailureReason: string |-- EvaluatedMetrics: map | |-- keyType: string | |-- valueType: double +-----------------------+-------+-------------+---------------------------------------+ |Rule |Outcome|FailureReason|EvaluatedMetrics | +-----------------------+-------+-------------+---------------------------------------+ |ColumnExists "id" |Passed |null |{} | |IsComplete "id" |Passed |null |{Column.first_name.Completeness -> 1.0}| +-----------------------+-------+-------------+---------------------------------------+
方法
__call__(frame, ruleset, publishing_options = {})
-
frame
– 表示您想要评估其数据质量的DynamicFrame
。 -
ruleset
– 字符串格式的数据质量定义语言(DQDL)规则集。要了解有关 DQDL 的更多信息,请参阅数据质量定义语言(DQDL)引用指南。 -
publishing_options
– 一个字典,用于为发布评估结果和指标指定以下选项:-
dataQualityEvaluationContext
– 一个字符串,用于指定 AWS Glue 应在哪个命名空间下发布 Amazon CloudWatch 指标和数据质量结果。汇总指标显示在 CloudWatch 中,而完整结果显示在 AWS Glue Studio 界面中。-
必需:否
-
默认值:
default_context
-
-
enableDataQualityCloudWatchMetrics
– 指定是否应将数据质量评估结果发布到 CloudWatch。您可以使用dataQualityEvaluationContext
选项为指标指定命名空间。-
必需:否
-
默认值:False
-
-
enableDataQualityResultsPublishing
– 指定是否应在 AWS Glue Studio 界面的 Data Quality(数据质量)选项卡上显示数据质量结果。-
必需:否
-
默认值:true
-
-
resultsS3Prefix
– 指定 AWS Glue 可以写入数据质量评估结果的 Amazon S3 位置。-
必需:否
-
默认值:""(空字符串)
-
-
apply(cls, *args, **kwargs)
继承自 GlueTransform
apply。
name(cls)
继承自 GlueTransform
name。
describeArgs(cls)
继承自 GlueTransform
describeArgs。
describeReturn(cls)
继承自 GlueTransform
describeReturn。
describeTransform(cls)
继承自 GlueTransform
describeTransform。
describeErrors(cls)
继承自 GlueTransform
describeErrors。
describe(cls)
继承自 GlueTransform
describe。