spark写入数据到mongodb

将HIVE库里的表数据通过saprk写入到mongodb库里的实现

1、到mongodb的官网上下载mongo-spark-connector_2.10-1.1.0

2、下载mongodb-driver-core-3.6.0.jar ,mongodb-driver-3.6.0.jar,bson-3.6.0.jar 三者的版本必须一致

使用scala连接mongodb,官网上有相关的文档说明

代码如下

val df = hiveContext.sql("select  concat(appid,'_',date_starttime) rym_day_result_id ,appid, uv_total_k , uv_total_y ,uv_initialize  ,uv_exposure    ,uv_active_k    ,uv_active_y,date_add(date_starttime,1) dateNew,date_starttime dateTime,0 activeNum from rym_day_result")

val uriStr = "mongodb://user:pwd@ip:port/mirp-core.test_day_result"


df.write.options(Map("spark.mongodb.output.uri"-> uriStr)).mode("overwrite").format("com.mongodb.spark.sql").save()

mode:overwrite 覆盖,append 追加


提交到spark集群上执行

spark-submit --master yarn-cluster \
    --queue queue_2101_01  \
    --executor-cores 4  \
   --executor-memory  6G \
   --driver-memory 2G  \
   --num-executors 5  \
   --files /appcom/spark-config/fairscheduler.xml,/appcom/hive-config/hive-site.xml \
   --properties-file /appcom/spark-config/spark-defaults.conf \
   --jars bson-3.6.0.jar,mongo-spark-connector_2.10-1.1.0.jar,mongodb-driver-3.6.0.jar,mongodb-driver-core-3.6.0.jar \
  --class com.pingan.paic.core.CollectDataToMongodb rym_data_day.jar ${dateNo}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值