1.Deequ简介
Deequ是AWS实验室开发的一款开源数据质量监控工具,它构建在Apache Spark之上,主要用于大规模数据集的质量验证。Deequ允许用户定义"数据质量约束",并自动计算指标来验证这些约束是否得到满足,从而帮助数据工程师和分析师确保其数据的正确性和完整性。
在数据从数据源抽取、转换并加载到数据仓库的ETL过程中,Deequ可以嵌入其中,对每一步的数据进行质量检查。例如,在数据抽取后检查数据的完整性,在转换过程中检查数据的一致性和准确性,确保只有符合质量要求的数据才能进入数据仓库,避免错误数据对后续数据分析和决策的影响。
2.探查字段
Spark
流水线数据探查组件采用Deequ
实现,可将任意节点输出的DataFrame
数据集进行数据探查,字段如下:
字段名 | 含义 | 类型 | 备注 |
---|---|---|---|
columnName | 分析的列名 | StringType | 所有类型字段 |
completeness | 该列的完整性,取值范围在 0 到 1 之间,1 代表无缺失值。 | DoubleType | 所有类型字段 |
approximateNumDistinctValues | 该列不同值的近似数量 | LongType | 所有类型字段 |
dataType | 该列的数据类型 | StringType | 所有类型字段 |
typeCounts | 键为数据类型名称,值为该类型在列中出现的次数。 | MapType(StringType, LongType) | 所有类型字段 |
minimum | 该列的最大值 | DoubleType | 整形类型字段 |
maximum | 该列的最小值 | DoubleType | 整形类型字段 |
mean | 该列的平均值 | DoubleType | 整形类型字段 |
sum | 该列所有值的总和 | DoubleType | 整形类型字段 |
stdDev | 该列的标准差 | DoubleType | 整形类型字段 |
approxPercentiles | 该列的近似分位数 | StringType | 整形类型字段 |
minLength | 字符串列中最短字符串的长度 | IntegerType | 字符类型字段 |
maxLength | 字符串列中最长字符串的长度 | IntegerType | 字符类型字段 |
3. 集成演示
3.1 创建任务
入口:通过顶部菜单栏选择 任务开发,或通过快捷入口 快速创建任务。
任务类型:选择
SparkPipeline
。
3.2 配置任务
点击任务名称,进入任务详情页。任务节点如下
使用MockData
节点生成100条测试数据
使用DataProfiling
探索数据
最后通过TableShow
对探索结果可视化展示
3.3 运行任务
点击 运行 按钮启动任务
🔗 平台体验地址:DataStudio (http://1.94.182.15:8090)