kafka0.9-spark1.6-ElasticSearch2.1集成

本文介绍如何实现Kafka、Spark Streaming和Elasticsearch的集成应用,通过具体步骤展示了从数据采集、实时处理到搜索展示的全过程,并解决了集成过程中常见的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

kafka0.9-spark1.6-ElasticSearch2.1集成:
工程目的:将kafka读入的数据流,经过spark streaming数据分析,最后写入ES


eclipse卡顿:
内存不足所以会卡死,修改一下eclipse.ini
-XX:MaxPermSize=768m
-Xms1024m
-Xmx3072m


使用maven-assembly,在pom.xml中与dependencies平级加入以下配置:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.5.5</version>
<configuration>
<archive>
<manifest>
<mainClass>com.winbox.dataman.ETL</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>


所需要的外部引用jar包:
spark-assembly-1.6.0-hadoop2.6.0.jar
elasticsearch-spark_2.10-2.2.0.jar
spark-examples-1.6.0-hadoop2.6.0.jar
elasticsearch-hadoop-2.2.0.jar
手动转成maven依赖:
mvn install:install-file -Dfile=spark-assembly-1.6.0-hadoop2.6.0.jar -DgroupId=org.apache.repack -DartifactId=spark-assembly-1.6.0-hadoop2.6.0 -Dversion=2.6 -Dpackaging=jar
mvn install:install-file -Dfile=elasticsearch-spark_2.10-2.2.0.jar -DgroupId=org.apache.repack -DartifactId=elasticsearch-spark_2.10-2.2.0 -Dversion=2.1 -Dpackaging=jar
mvn install:install-file -Dfile=spark-examples-1.6.0-hadoop2.6.0.jar -DgroupId=org.apache.repack -DartifactId=spark-examples-1.6.0-hadoop2.6.0 -Dversion=2.6 -Dpackaging=jar
mvn install:install-file -Dfile=elasticsearch-hadoop-2.2.0.jar -DgroupId=org.apache.repack -DartifactId=elasticsearch-hadoop-2.2.0 -Dversion=2.2 -Dpackaging=jar


使用mvn package assembly:single生成可执行jar包:
遇到的问题:
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin: 2.3 . 2 :compile ( default -compile) on 解决方法:调整JRE到最新版。
不兼容的类型: lambda 表达式中的返回类型错误  void无法转换为java.lang.Void 解决方法:results.foreachRDD(javaRDD -> {JavaEsSpark.saveToEs(javaRDD, esSchema);return null;});
打出的jar包没有包含配置文件 解决方法:maven工程的配置文件必须要放到/src/main/resources资源文件夹中
spark-submit作业部署方式参数报错,无法初始化Driver 解决方法:打包到集群跑的工程,SparConf初始化代码去掉.setMaster(master)


git 操作工程步骤:
git clone git@pmp.yundun.cn:/ES/kafka2es     克隆git仓库
要进入git仓库目录下再进行相应操作
git status 查看当前git状态
git add . 提交当前文件夹内容到git仓库
git commit -a 提交改动
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
git push origin master push工程分支
git log 查看提交日志
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值