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

相关推荐
fouryears_234172 分钟前
深入拆解Spring核心思想之一:IoC
java·后端·spring
codervibe13 分钟前
使用 Spring Boot + JWT 实现多角色登录认证(附完整流程图)
java·后端
坚持学习永不言弃14 分钟前
Ehcache、Caffeine、Memcached和Redis缓存
java
阿劲24 分钟前
从业务卡顿到数据库连接池耗尽:Spring Boot项目HikariCP超时问题实战排查
java·后端·面试
亮11136 分钟前
Maven 编译过程中发生了 Java Heap Space 内存溢出(OutOfMemoryError)
java·开发语言·maven
添乱44 分钟前
「Java案例」求PI的值
java
Zhu_S W1 小时前
深入理解Java虚拟机:Java内存区域与内存溢出异常
java·开发语言·jvm
快乐非自愿1 小时前
商品中心—库存分桶高并发的优化文档
java·前端·spring
鸡蛋灌Bean1 小时前
Java常用设计模式大全
java·开发语言·设计模式
喝可乐的布偶猫1 小时前
Java-----韩顺平单例设计模式学习笔记
java·笔记·设计模式