使用maven进行打包:
打包命令:
mvn -Pyarn -Dhadoop.version=2.3.0-cdh5.0.0 -Phive -Phive-thriftserver -DskipTests clean package
摘要: Spark SQL , Kudu
参考 https://github.com/xieenze/SparkOnKudu/blob/master/src/main/scala/com/spark/test/KuduCRUD.scala
引入 spark-core_2.11 , spark-sql_2.11 , kudu-spark2_2.11 , hadoop-client 依赖包
指定 kudu.master" , kudu.table ,如果读取超时加入 kudu.operation.timeout.ms 参数
或者
写入数据可以使用dataframe的 write 方法,也可以使用 kuduContext 的 updateRows , insertRows , upsertRows , insertIgnoreRows 方法
直接调用dataframe的write方法指定 kudu.master , kudu.table ,只支持 append 模式,对已有key的数据自动更新
调用kuduContext的 upsertRows 方法,效果和dataframe调用write append模式一样
调用kuduContext insertRows , insertIgnoreRows 方法,如果插入的数据key已存在insertRows直接报错,insertIgnoreRows忽略已存在的key,只插入不存在的key
调用kuduContext updateRows 方法,对已经存在的key数据做更新,如果key不存在直接报错
使用已有dataframe的schema建表
使用 StructType 自定义schema
删除表和判断表是否存在
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)