AWSGlue中对于模式/预期文件格式的基本数据验证,包括行级别验证
创始人
2024-09-25 18:00:47
0

AWS Glue的数据验证功能可以使用称为"DynamicFrame"的抽象概念来创建。在动态框架中,数据集被表示为一个分层的、附加了架构的JSON格式,主要包括以下部分:

  1. Schema - JSON格式的模式对象表示数据集的架构。
  2. Root - 实际的数据记录根。
  3. Record - 实际数据记录中一个记录的JSON表示。

基本数据验证可以使用以下步骤实现:

  1. 创建一个动态框架并指定模式对象。
from awsglue.dynamicframe import DynamicFrame
from pyspark.sql.types import StructType, StructField, StringType

schema = StructType([
    StructField("id", StringType(), True),
    StructField("name", StringType(), True),
    StructField("city", StringType(), True),
])

dynamic_frame = DynamicFrame.from_options(
    connection_type="s3",
    format="csv",
    schema=schema,
    connection_options={
        "paths": ["s3://bucket/path/to/csv/files/"]
    }
)
  1. 使用DynamicFrame API来实施数据验证规则。
# 行级别验证(如需要满足特定的字段值)
from awsglue.dynamicframe import DropRecordTransform
from awsglue.utils import getResolvedOptions

args = getResolvedOptions(sys.argv, ['threshold'])

threshold = args['threshold']

drop_transform = DropRecordTransform(dynamic_frame, lambda x: x['city'] != threshold)
dynamic_frame = drop_trasnform.resolve(dynamic_frame)

# 数据列级别验证
from awsglue.dynamicframe import FilterTransform

filter_transfrom = FilterTrasnform(
    dynamic_frame,
    lambda x: x['city'] is not None and x['city'] != ''
)

dynamic_frame = filter_transfrom.resolve(dynamic_frame)

相关内容

热门资讯

关于!微信微乐自建房辅助工具,... 关于!微信微乐自建房辅助工具,微乐家乡麻将自建房辅助app(开挂自建房)方法1)微乐家乡麻将自建房辅...
大家学习交流!微信卡五星辅助器... 大家学习交流!微信卡五星辅助器,微乐小程序免费黑科技(开挂自建房)方法1、很好的工具软件,可以解锁游...
三分钟了解!微乐微信自建房辅助... 三分钟了解!微乐微信自建房辅助工具插件,微乐家乡麻将自建房辅助app(开挂自建房)工具1、三分钟了解...
一分钟教会你!微乐家乡麻将自建... 一分钟教会你!微乐家乡麻将自建房辅助app,微乐自建房脚本免费入口(开挂自建房)方法1、用户打开应用...
分享实测!微信微乐自建房辅助工... 分享实测!微信微乐自建房辅助工具,微乐自建房脚本免费入口(开挂自建房)器1、起透看视 微信微乐自建房...
重大通报!微乐自建房辅助工具脚... 重大通报!微乐自建房辅助工具脚本,微乐小程序免费黑科技(开挂自建房)app微乐自建房辅助工具脚本破解...
如何分辨真伪!微乐微信自建房辅... 如何分辨真伪!微乐微信自建房辅助工具插件,微乐小程序免费黑科技(开挂自建房)技巧1、微乐微信自建房辅...
我来教教你!微乐自建房辅助工具... 我来教教你!微乐自建房辅助工具挂,微乐家乡麻将自建房辅助app(开挂自建房)工具1、玩家可以在微乐家...
重大来袭!微乐自建房辅助工具神... 重大来袭!微乐自建房辅助工具神器,微乐小程序免费黑科技(开挂自建房)器1、游戏颠覆性的策略玩法,独创...
带你了解!微信卡五星辅助器,微... 带你了解!微信卡五星辅助器,微乐自建房脚本免费入口(开挂自建房)方法1、带你了解!微信卡五星辅助器,...