spark,读取和写入同一张表问题

读取a表,写入a表

1.写入的是分区表,不报错

2.读取上来之后,创建为临时视图temp,然后先写入a表,再使用temp,就会报错

解决办法:可以先使用temp,再写入a表

3.写入的不是分区表,会报错

解决办法:先把数据收集到Driver,创建临时视图,再写入a表

4.万能解决办法:先把数据收集到Driver,创建临时视图,再写入a表

java 复制代码
Dataset<Row> dataset = spark.sql(get_new_id_Sql());

StructType schema = dataset.schema();

List<Row> rows = dataset.collectAsList();

spark.createDataFrame(rows, schema).createOrReplaceTempView("all_data");
sql 复制代码
insert overwrite table ods.a
select * from all_data

可能的原因:spark是移动数据不如移动计算,所以数据的路径还是a表,如果收集到Driver,路径就不是a表了

相关推荐
徐同保35 分钟前
Git Commit message规范(Git提交信息规范)
大数据·git·elasticsearch
码农很忙1 小时前
解锁数据库迁移新姿势:让AI真正“可用、可信、可落地”
大数据·人工智能
珠海西格电力1 小时前
零碳园区如何吸引企业入驻?
大数据·物联网·产品运营·能源
justwaityou13141 小时前
010银发经济需求与产品矩阵:商业与社会责任的双模实践
大数据·银发经济·养老
一步一个脚印一个坑2 小时前
如何建立精细化运营体系
大数据
2501_933670793 小时前
2026年中专大数据与会计专业可考取的会计相关证书
大数据
江瀚视野5 小时前
昆仑芯启动港股上市:一枚芯片,如何折射百度全栈AI能力?
大数据·人工智能
CNRio5 小时前
Day 50:Git的高级技巧:使用Git的rebase交互式修改提交历史
大数据·git·elasticsearch
Coder_Boy_5 小时前
基于LangChain4j的证券业务系统模块四
大数据·人工智能·spring cloud·langchain
CNRio5 小时前
Day 52:Git的高级技巧:使用Git的bisect定位问题提交
大数据·git·elasticsearch