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
相关推荐
IT古董13 分钟前
《FDE前沿部署工程师实战教程》29 - Enterprise AI Security:Agent安全体系设计
大数据·数据库·人工智能
喆星时瑜24 分钟前
RStudio 数据清洗案例教程
大数据·数据库
卷毛迷你猪1 小时前
快速实验篇(B02)DWD 生产级升级
大数据·hive·hadoop
阿狗童鞋1 小时前
Elasticsearch实战指南
大数据·elasticsearch·搜索引擎
老A的AI实验室1 小时前
赛博月刊 #2026年9月
大数据·人工智能·深度学习·ai·llm
卷毛迷你猪2 小时前
快速实验篇(B03) 用户行为漏斗与转化率
大数据·hive·hadoop
径硕科技JINGdigital2 小时前
出海企业想要借助统一平台接入国际主流基础模型,可选哪些云上生成式 AI 平台?
大数据·人工智能
Elastic 中国社区官方博客2 小时前
使用 Jev 作为 search reranker:基准测试与实现方法
大数据·运维·elasticsearch·全文检索
卷毛迷你猪3 小时前
快速实验篇(B01)用户行为日志画像与 DWD 标准化
大数据·hive·hadoop
仍然.3 小时前
RabbitMQ---可靠性传输
网络·分布式·rabbitmq