Flume2Kafka2HBase功能

Flume2Kafka2HBase功能块

  最近学习尚硅谷电信客服项目-大数据项目,将以前学习的Hadoop,HBase,Flume,Kafka使用起来,一方面是学习各技术之间的项目使用,二方面是通过写博客,加强学习印象,查漏补缺。
电信客服项目有数据模拟生成,数据消费,数据分析,数据展示这四个模块,我将数据消费模块剥离出来,按照项目重新敲了3遍,将关键的代码全部整合在一起,独立成一个项目flume+kafka+hbase实战


前言

  数据消费模块是将通过Flume采集文件数据,Kafka消费,写入HBase的过程,跑通该模块需要搭建启动好Hadoop,Zookeeper,Flume,Kafka,HBase环境。Flume负责采集数据;Kafka负责拉去Flume数据,起到异步,削峰,解耦的作用;Zookeeper为HBase提供稳定服务和failover机制,HDFS为HBase提供底层存储支持,MapReduce为HBase提供高性能的计算能力。所以上面几个技术不能少,通过这个项目例子,大概能了解这些技术点之间的实际使用,方便后面的深入研究,从用到懂的升华。

一. 为什么要集成Flume和Kafka

  一般使用Flume+Kafka架构的都是希望完成实时流式的日志处理,后面再连接上Flink/Storm/Spark Streaming等流式实时处理技术,从而完成日志实时解析的目标。第一、如果Flume直接对接实时计算框架,当数据采集速度大于数据处理速度,很容易发生数据堆积或者数据丢失,而kafka可以当做一个消息缓存队列,从广义上理解,把它当做一个数据库,可以存放一段时间的数据。第二、Kafka属于中间件,一个明显的优势就是使各层解耦,使得出错时不会干扰其他组件。

二. Kafka介绍和实践

  Kafka是一个分布式发布订阅消息系统,能够将消息从一个端点传递到另一端点。Kafka消息保存在磁盘上并在集群内复制以防止数据丢失。主要掌握三个原理部分:producer,topic,consumer:
  Producer:生产者。向Kafka的一个topic发布消息的生产过程。本例中Flume作为Kafka的生产者
  Topic:主题。对消息的逻辑分类,起到资源隔离的作用
  Consumer:消费者。订阅topic并处理其发布的消息的消费过程

  在发布订阅系统中,不同的消息保存在不同的主题中,消费者可以订阅一个或多个主题,并使用该主题的所有信息。比如广播电台(Producer),它发布了体育,电影,音乐等不同的频道(Topic),任何用户(Consumer)可以订阅自己喜欢的频道,并从中获取内容

结合电信客服项目,启动Kafka部分:
为了保证Flume采集的数据能够写入Kafka指定的topic内,先启动Kafka。
先进入各个集群节点的Kafka安装路径,启动Kafka,并创建topic:

 ./bin/kafka-server-start.sh  config/server.properties
 bin/kafka-topics.sh --zookeeper master:2181 --topic ct --create --replication-factor 1 --partitions 3

三. Flume介绍和实践

  Flume是分布式高可用的海量日志聚合系统,支持在系统中监控各类数据用于收集数据;同时Flume提供数据写入各种数据接收方用于转发数据&#

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值