前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住给大家分享一下。点击跳转到网站:https://www.captainai.net/dongkelun
前言
总结Spark覆盖写Hive分区表,如何只覆盖部分对应分区
版本
要求Spark版本2.3以上,亲测2.2无效
配置
1 | config("spark.sql.sources.partitionOverwriteMode","dynamic") |
注意
1、saveAsTable方法无效,会全表覆盖写,需要用insertInto,详情见代码
2、insertInto需要主要DataFrame列的顺序要和Hive表里的顺序一致,不然会数据错误!
代码
已上传github
1 | package com.dkl.blog.spark.hive |
结果
1 | +---+----+---+----+ |