spark写入数据报错

报错信息如下:

Exception in thread "main" org.apache.spark.sql.AnalysisException: Cannot overwrite table dwd.dim_user_info that is also being read from

at org.apache.spark.sql.DataFrameWriter.saveAsTable(DataFrameWriter.scala:720)

at org.apache.spark.sql.DataFrameWriter.saveAsTable(DataFrameWriter.scala:626)

at GS_1.task2$.writeDwdTable(task2.scala:103)

at GS_1.task2$.teast1(task2.scala:65)

at GS_1.task2$.main(task2.scala:109)

at GS_1.task2.main(task2.scala)

我的解决办法如下:

Scala 复制代码
    println("""这里有个报错:Exception in thread "main" org.apache.spark.sql.AnalysisException: Cannot overwrite table dwd.dim_user_info that is also being read from""")
    println("""读写同时报错,我的解决办法是,创建临时表b,删除原表a,表b创建表a,表a删除。""")
    frame.write.mode("overwrite").partitionBy("etl_date").saveAsTable(s"dwd.${dwdTableName}_B")   // 创建 B
    util.getSparkSession.sql(s"drop table dwd.${dwdTableName}")   // 删除 A
    util.getSparkSession.sql(s"select * from dwd.${dwdTableName}_B").write.mode("overwrite").partitionBy("etl_date").saveAsTable(s"dwd.${dwdTableName}")  // 复制B创建A
    util.getSparkSession.sql(s"drop table dwd.${dwdTableName}_B")   // 删除 B
相关推荐
ZeekerLin1 小时前
本体论Ontology在企业AI项目落地思考
大数据·人工智能·企业ai落地·本体论
七夜zippoe1 小时前
基于 DolphinDB 构建全流程质量追溯体系:从原材料到成品的全链路追踪
大数据·人工智能·算法·全链路·dolphindb·质量追溯
zzzll11111 小时前
AI Agent可观测性:破解多步推理黑盒的技术实践
大数据·人工智能
YOU OU1 小时前
RabbitMQ高级特性
分布式·rabbitmq
没落之王2 小时前
没落之王破天象,易学当兴
大数据·人工智能·哈希算法·可用性测试
金融小师妹8 小时前
多因子智能推演:油价回落6%与黄金震荡上行的关联解析——AI预测框架
大数据·python·深度学习
IanSkunk10 小时前
眼视光中心设备互联与数据安全:从设备采购到患者数字档案的合规路径
大数据
重庆传粉科技11 小时前
AI搜索重构互联网价值交换:GEO如何缓解全域流量流失难题
大数据·人工智能
珠***格12 小时前
双碳目标下:四可装置如何助力光伏消纳与碳数据上报
网络·人工智能·分布式·安全·边缘计算