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

相关推荐
uzong21 小时前
程序员从大厂回重庆工作一年
java·后端·面试
kyle~21 小时前
C++---value_type 解决泛型编程中的类型信息获取问题
java·开发语言·c++
开心香辣派小星1 天前
23种设计模式-15解释器模式
java·设计模式·解释器模式
Halo_tjn1 天前
虚拟机相关实验概述
java·开发语言·windows·计算机
ganshenml1 天前
【GIT】Git 本地无法识别远程分支的原因与解决方法 not a valid ref
大数据·git·elasticsearch
摆烂z1 天前
Docker与Jib(maven插件版)实战
java
RainbowSea1 天前
从 Spring Boot 2.x 到 3.5.x + JDK21:一次完整的生产环境迁移实战
java·spring boot·后端
笨手笨脚の1 天前
Spring Core常见错误及解决方案
java·后端·spring
奶油松果1 天前
Springboot自动装配 - redis和redission
java·spring boot·redis
霍夫曼1 天前
UTC时间与本地时间转换问题
java·linux·服务器·前端·javascript