Flume+kafka+flink+es 构建大数据实时处理

大数据目前的处理方法有两种:一种是离线处理,一种是实时处理。如何构建我们自己的实时数据处理系统我们选用flume+kafka+flink+es来作为我们实时数据处理工具。因此我们的架构是:

flume集群

kafka集群

flink集群

es集群

其具体架构如图

 

对于flume集群,它的作用就是采集数据并将数据提供给kafka集群,我们可以通过topic来实现。

对于zookeeper-kafka集群,它的作用是存储flume提供的数据,并且将相应的topic对外开放。它的作用就相当于一个数据库(事实上它喜欢被动)

对于flink集群,它当然是消费kafka的message,并且对这些message进行各种犀利的处理(它对计算很擅长,对于关系并不像吹的那样牛逼也许是我们主要使用streamAPI而不是tableAPI的缘故)这里要声明的是我们做的是流式逐条数据处理。表关联和同表不同数据关联请先跑一遍mysql。因为tableAPI并不能支持我们之前用过的所有sql函数,当然最常见的SUM,AVG,COUNT等除外。曾经很SB的想用flink的tableAPI把大约3G的数据文件根据某个字段合并(i7 4核 16G内存的MBP跑了7分钟)觉得还是nio的0拷贝好一点随便七八十的分片并行(数据量大的话能把别的系统跑崩)对于连接ES和kafka的事交给flink的API仨字儿,真好用。

当然版本也要注意:我们flume => 1.8.0

                                       zookeeper => 3.5.5

                                       kafka => 2.11

                                       flink => 1.9.1

                                       ES => 7.2.0

具体配置下次再聊

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值