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字段名一一对应

相关推荐
denlaku13 分钟前
JDK 10 新特性详解
java·开发语言
程序员耄耋17 分钟前
JDK21的下载与安装(2025.8.2)
java
~木雨20 分钟前
Java 线程从生到死:创建三式、六态流转、中断协作与死锁活锁饥饿,一篇讲透
java·java并发·虚拟线程·死锁·线程状态·中断机制
Wang's Blog27 分钟前
Java框架 SpringCloud 快速入门: Nacos 服务多级存储模型
java·spring·spring cloud
小羊没烦恼!28 分钟前
系统内部模块(子系统)之间的耦合以及模块(子系统)划分
java·开发语言·前端·数据库·算法·c#
Chase_______30 分钟前
【杂项知识点】一文搞懂 JVM、JRE 与 JDK:从概念混淆到生产部署
java·开发语言·jvm
Nebula_g34 分钟前
JavaSE拓展:Arrays和Collections工具类
java·开发语言·算法·排序算法·工具类·javase·技术栈
一个有温度的技术博主41 分钟前
凌晨三点的消息堆积:当 MQ 变成“停车场“
java·后端·场景
成旭先生1 小时前
AI 文本审核 API:一段中文文本判风险等级、命中标签与处置建议
java·前端·人工智能·api接口·内容风控·文本审核·ugc审核
~~~4551 小时前
Java 数组详细笔记
java