Spark Streaming+kafka+eclipse编程

http://blog.csdn.net/amber_amber/article/details/46049455

eclipse本身对Scala的支持不是很友好,但还是有一部分同学(比如我)习惯用eclipse来做开发。所以这里提供结合spark streaming+kafka编程在eclipse上实现的过程。


安装配置单机版kafka

如果已经有kafka,这一步跳过。参考官网介绍步骤进行。


(1) 下载kafka包并解压

[plain]  view plain  copy
  1. tar -xzf kafka_2.10-0.8.2.0.tgz  
[plain]  view plain  copy
  1. cd kafka_2.10-0.8.2.0  

(2) 启动zookeeper和kafka
[plain]  view plain  copy
  1. bin/zookeeper-server-start.sh config/zookeeper.properties  
[plain]  view plain  copy
  1. bin/kafka-server-start.sh config/server.properties  
如果需要修改zookeeper的端口号,在zookeeper.properties中修改后,也要同步修改server.properties, producer.properties以及consumer.properties里的。

(3) 创建topic

[plain]  view plain  copy
  1. bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test  

查看已创建的topic
[plain]  view plain  copy
  1. bin/kafka-topics.sh --list --zookeeper localhost:2181  


(4) 启动producer用于发送数据
[plain]  view plain  copy
  1. bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test   


(5) 启动consumer接收器(这个步骤仅仅用来测试kafka的运行,跳过也可以)
[plain]  view plain  copy
  1. bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning  



eclipse下的spark streaming编程

(1) 创建一个新的scala project。在此之前需要先安装Scala插件scala IDE,可以去官网下载安装,过程就省略了。


(2) 添加依赖包。右键新创建的project --> build path --> configure build path,然后点add external jars...

要添加的jar包(注意版本的对应关系):

kafka_2.10-0.8.1.1.jar  
metrics-core-2.2.0.jar  
spark-streaming_2.10-1.3.1.jar  
spark-streaming-kafka_2.10-1.3.1.jar             
zkclient-0.3.jar

spark-assembly-*.jar


(3) 编程。


(4) 程序编写完后,打包成jar包:右键 --> export -->export jar file。

在集群中执行


(1) 把2步骤中打包后的jar包上传到spark客户端。


(2) 添加依赖: 把如下jar包上传到同客户端上的某个目录下(注意版本):

这里的jar包和2中要导入eclipse project的相比,少了一个spark-assembly*jar包。因为spark-assembly是spark的核心包,客户端本身就有。
kafka_2.10-0.8.1.1.jar  
metrics-core-2.2.0.jar  
spark-streaming_2.10-1.3.1.jar  
spark-streaming-kafka_2.10-1.3.1.jar             
zkclient-0.3.jar


(3) 提交执行:

[plain]  view plain  copy
  1. spark-submit \  
  2.         --master yarn-cluster \   
  3.         --class com.sogou.spark.streamExm.KafkaWordCount \   
  4.         --jars   
  5.             spark-streaming_2.10-1.3.1.jar,\  
  6.             spark-streaming-kafka_2.10-1.3.1.jar,\  
  7.             zkclient-0.3.jar,kafka_2.10-0.8.1.1.jar,\  
  8.             metrics-core-2.2.0.jar    
  9.         your-spark-streaming.jar [args]  


除了这种方法,还支持maven和sbt来管理项目和依赖。spark streaming官网上有介绍如何用maven或者sbt管理streaming项目和依赖,有兴趣的可以去看。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值