问题
你有现有的差值表,有几个空的列。你需要用数据填充或更新这些列原始文件拼花。
解决方案
在这个例子中,有一个客户表,这是一个现有的差值表。它有一个地址列用缺失值。更新后的数据存在于铺格式。
- 创建一个DataFrame从铺文件使用Apache火花API声明:
% python updatesDf = spark.read.parquet(“/路径/ /原始文件”)
- 视图的内容updatesDF DataFrame:
% python显示器(updatesDf)
- 创建一个表的updatesDf DataFrame。在这个例子中,因此得名更新。
% python updatesDf.createOrReplaceTempView(“更新”)
- 检查表的内容更新,并比较它的内容客户:
% python显示器(客户)
- 使用合并成语句合并的数据更新表到原始客户表。
% sql合并成客户使用更新客户。customerId =来源。customerId当匹配更新设置地址=更新。地址WHEN NOT MATCHED THEN INSERT (customerId, address) VALUES (updates.customerId, updates.address)
在这里,客户是原始的δ表有吗地址列用缺失值。更新表创建的吗DataFrame updatesDf,这是由从原始文件中读取数据。的地址表列的原始δ值填充更新,覆盖任何现有值地址列。
如果更新包含客户中没有的客户表,然后命令添加这些新客户记录。