Spark 读取ES采坑系列

目录

一、使用的插件

二、ES集群和Elasticsearch-hadoop版本问题

[三、Elasticsearch-hadoop 和Scala版本以及Spark版本(版本不匹配会有各种异常信息](#三、Elasticsearch-hadoop 和Scala版本以及Spark版本(版本不匹配会有各种异常信息)


一、使用的插件

复制代码
<dependency>
  <groupId>org.elasticsearch</groupId>
  <artifactId>elasticsearch-hadoop</artifactId>
  <version>xxx</version>
</dependency>

二、ES集群和Elasticsearch-hadoop版本问题

运行异常信息:

Cannot detect ES version - typically this happens if the network/Elasticsearch cluster is not accessible or when targeting a WAN/Cloud instance without the proper setting 'es.nodes.wan.only'

Invalid major version 5.6.3. Version is lower than minimum required version 6.x.

原因:7.14.0版本以及以上要求ES集群的版本是6.X

解决方法:升级ES集群或者降低插件版本

三、Elasticsearch-hadoop 和Scala版本以及Spark版本(版本不匹配会有各种异常信息)

各种错误:

java.lang.NoSuchMethodError:scala.Predef$.refArrayOps([Ljava/lang/Object;)Lscala/collection/mutable/ArrayOps;

Caused by: java.lang.ClassNotFoundException: scala.collection.TraversableOnce$class

java.lang.NoClassDefFoundError: org/apache/spark/Partition$class

以上这些都是版本不一致导致的

解决办法

Elasticsearch-hadoop 的6.x~8.x 的Spark版本都是2.11的,所以如果你的Spark的jar包用的是2.12得改成2.11 并且scala的版本也得保持在2.11版本,比如spark-core_2.12 得改成spark-core_2.11。

还得注意一点:如果你的代码不是本地打包的话,还得注意一下打包环境的Spark版本版本,也得是3.0以下才行,不然还是会有问题。具体可以看版本对应关系

Spark和Scala个版本对应关系 具体可以看这里

相关推荐
Elasticsearch14 分钟前
将你的 Grafana Kubernetes 仪表板迁移到 Elastic Observability:相同的 PromQL,30 倍更快的查询
elasticsearch
小K漫剧创作笔记17 分钟前
AI短剧出海从「选修课」变「必修课」:合规分发正在成为内容全球化的真正门槛
大数据·人工智能·ai·aigc·漫剧
samLi062025 分钟前
【数据集】中国“千兆城市”关键指标数据(2021-2023年)
大数据
城数派37 分钟前
1991-2100年中国1km分辨率逐月气候指标栅格数据集(28个气象指标)
大数据
AC赳赳老秦1 小时前
司法公开数据采集应用:OpenClaw 抓取裁判文书公开信息,批量整理同类参考案例
java·大数据·python·数据挖掘·数据分析·php·openclaw
yurenshi16683 小时前
自媒体多账号管理工具 4 款实测:聚媒通 / 融媒宝 / 新榜小豆芽 / 矩阵通横向对比,快速选型
大数据·矩阵·媒体
nVisual4 小时前
机柜PDU安装位置与空间建模方案
大数据·网络·数据库·信息可视化·数据中心基础设施管理
@insist1234 小时前
系统规划与管理师-流程评价与持续改进核心知识-终章
大数据·人工智能·软考·系统规划与管理师·软件水平考试·系统规划与管理工程师
TechEdu2026065 小时前
[计算机科学]大数据硬件架构与软件架构概览
大数据·计算机科学
爱莉希雅&&&5 小时前
elasticsearch+kibana+logstash+filebeat链路部署流程
大数据·elasticsearch·搜索引擎·kibana·logstash·filebeat