首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mac上搭建kafka并利用spark streaming实时消费

Kafka是一个快速、可扩展的、高吞吐、可容错的分布式发布订阅消息系统,是由Apache软件基金会开发的一个开源流处理]平台,由Scala和Java编写。

APP流行起来之后,企业就有了大量用户的行为数据,怎么有效的利用这些数据成了企业的重中之重。利用数据的第一步就是高效的采集数据,Kafka就是企业传输收集用户行为数据的常用系统。

程序员开发的算法都是部署在服务器上,要想在本地测试就得自己在本地搭建Kafka环境。通过模拟用户行为数据来营造真实环境,这样可以更方便地对代码进行调试。

mac上安装Kafka

采用mac下的安装利器homebrew,在终端输入即可,homebrew会自动安装kafka的依赖zookeeper。

使用brew安装后,kafka和zookeeper的配置文件路径如下,通常情况下我们也不需要做任何修改。

安装完之后,终端会显示启动提示消息:

使用下面两个命令快速启动zookeeper和kafka:

模拟真实环境生产Kafka消息

虽然可以在终端生产消息,但要生产真实环境下的json格式的数据确很麻烦,所以写了脚本自动模拟真实环境下的数据。

先在idea上增加mavern-kafka依赖

下面的代码创建了两个topic,每200毫秒随机产生一些用户在电商APP上的行为数据。

在终端输入以下命令,接收topic-impression的消息.

spark streaming消费消息

Spark streaming是Spark核心API的一个扩展,它对实时流式数据的处理具有可扩展性、高吞吐量、可容错性等特点。

下面的程序实现spark streaming每6秒打印一次从kafka收集到数据。

参考资料

不停游动的鱼, mac 本地安装kafka)

lusecond,mac环境下使用brew安装kafka

spark, Spark Streaming + Kafka Integration Guide (Kafka broker version 0.10.0 or higher)

wiki, kafka

Andi Ai, Spark编程指南 - 简体中文版

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180430G0R94M00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券