Spark任务读取hive表数据导入es

使用elasticsearch-hadoop 将hive表数据导入es,超级简单

1.引入pom

XML 复制代码
<dependency>
  <groupId>org.elasticsearch</groupId>
  <artifactId>elasticsearch-hadoop</artifactId>
  <version>9.0.0-SNAPSHOT</version>
</dependency>
  1. 创建sparkconf
java 复制代码
// spark 参数设置
SparkConf sparkConf = new SparkConf();
//要写入的索引
sparkConf.set("es.resource","");
//es集群地址,不用全部配置会自动发现
sparkConf.set("es.nodes","");
sparkConf.set("es.mapping.id","c1");
sparkConf.set("es.net.http.auth.user","");//用户名
sparkConf.set("es.net.http.auth.pass","");//密码

SparkSession sparkSession = SparkSession.builder().config(sparkConf).enableHiveSupport()
                .getOrCreate();
  1. 写入es
java 复制代码
        Dataset<Row> dataSet = sparkSession.sql("select c1,c2,c3 from xx");
        JavaEsSparkSQL.saveToEs(dataSet, ImmutableMap.of());

sql读取的字段需要与es字段名一一对应

相关推荐
_codemonster7 分钟前
配置Tomcat时为啥要配置Artifacts
java·tomcat·firefox
无心水9 分钟前
2025,一路有你!
java·人工智能·分布式·后端·深度学习·架构·2025博客之星
m0_528749009 分钟前
C语言错误处理宏两个比较重要的
java·linux·算法
独自破碎E30 分钟前
BISHI43 讨厌鬼进货
android·java·开发语言
MX_935934 分钟前
Spring xml 方式整合第三方框架总结加案例
xml·java·spring
没有bug.的程序员38 分钟前
服务网格(Istio)与传统微服务深度对垒:流量治理内核、代码侵入性博弈与运维收益实战指南
java·运维·微服务·istio·流量治理内核·代码侵入性
该叫啥40 分钟前
Spring Bean 生命周期
java·spring·servlet
星火开发设计1 小时前
虚析构函数:解决子类对象的内存泄漏
java·开发语言·前端·c++·学习·算法·知识
好大的月亮1 小时前
中值法排序及LexoRank排序算法简述
java·算法·排序算法
TongSearch1 小时前
Tongsearch分片的分配、迁移与生命周期管理
java·服务器·数据库·elasticsearch·tongsearch