Spark 落地Hive增量操作 insertInto() 与
2020-04-05 本文已影响0人
多彩海洋
前言
- saveAsTable()的默认策略是如果表存在就会报错
- 使用spark做增量操作的时候,会看到有2个方法都可以做:
insertInto 和 mode(SaveMode.Append).saveAsTable()
区别:
- insertInto()
无关schema,只按数据的顺序插入,类似hive导入csv.
- mode(SaveMode.Append).saveAsTable()
1.如果表已存在,需要匹配插入数据和已有数据的format,partiton等参数,如果有区别会插入出错.如:没有提供partitionBy.
2.使用已存在的表的schema的column进行数据插入匹配