直接操作表的时候用自增这个方式会报错
因为spark over里必须有字段 在hive中使用
直接用SQL : create table table2Name as select row_number() over () as row_id,* from table1Name
UUID主键:也可以操作表 也可以操作RDD 可以同时 这种在增加UUID之后必须cache 他会一直到触发action是才会最终确认UUID的值
1、操作hive表
hc.udf.register("getUUID",()=>(java.util.UUID.randomUUID()+"").replace("-",""))
hc.sql("select getUUID() as row_id,* from table").write.saveAsTable("table2NaMe")
2、操作RDD sc.textFile("path").map(x=>{
java.util.UUID.randomUUID()+"").replace("-","") + ","+x
}).saveAsTextFile("path2")