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

Spark Structured Streaming 入门学习:集成Kafka

场景

希望对应用产生的某类型的日志数据,进行实时分析。日志数据以文件形式保存在服务器磁盘中,每一行为一个事件: , 形式。

方案

使用Filebeat转发数据到Kafka,将Kafka作为输入数据流,由Spark Streaming进行计算。Filebeat是轻量级的代理,非常简单易用,支持多种安装方式。Kafka是一个消息队列,也是一个流处理平台。这里作为一个消息队列(负责分发和储存)。Spark Streaming负责处理流数据

实践

资源准备

Filebeat 6.3.2

Kafka 0.10

Spark 2.4

Scala 2.11

CentOS 7.4 64位

安装&配置Kafka

启动Zookeeper Server:

启动Kafka Server:

创建Topic:

安装&配置Filebeat

版本6.3.2 下载地址直接多种安装方式,这里使用命令行启动。修改配置文件:( )

启动Filebeat,开始日志收集、转发。

日志内容

从Filebeat中转发到Kafka日志内容会增加一些信息:

每一行日志内容为 字段。

Spark 代码

调试运行,结果正确后,打包,在Spark集群中运行。

总结

入门学习 Spark Structured Streaming,里面要掌握的知识还是很多的,包括对 Scala、Kafka、Spark DataFrame/Dataset 操作等。继续加油!

参考资料

Real-time Streaming ETL with Structured Streaming in Apache Spark 2.1

Structured Streaming Programming Guide

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

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券