Kafka使用场景

  1. 日志收集

日志服务器—>flume – > kafka—>实时/离线处理!

在实际工作中, 系统和应用程序都会产生大量的日志。为了方便管理这些日志,可以利用Kafka 将这些零散的日志收集到Kafka 集群中,然后通过Kafka 的统一接口将这些数据开放给不同的消费者(Consumer) 。统一接口包括: Hadoop 的应用接口、HBase 的应用接口、ElasticSearch的应用接口等。

  1. 消息系统

线上业务流量很大的应用,可以使用Kafka 作为缓冲, 以减少服务端的压力。这样能够有效地解耦生产者(Producer)和消费者(Consumer),以及缓冲消息数据。

  1. 用户轨迹

可使用Kafka 记录浏览器用户或者手机App 用户产生的各种记录,例如浏览的网页、搜索的内容、点击的内容等。

这些用户活动信息会被服务器收集到Kafka 集群中进行存储,然后消费者通过“消费”这些活动数据来做实时分析,或者加载到Hive 数据仓库做离线数据分析与挖掘。

  1. 记录运营监控数据

Kafka 也可用来记录运营监控数据,包括收集各种分布式应用系统的数据(如Hadoop 系统、Hive 系统、HBase 系统等)。

  1. 实现流处理

数据---- > kafka—>实时处理!

Kafka 是一个流处理平台,所以在实际应用场景中也会与其他大数据套件结合使用,例如Spark Streaming 、Flink 等。

  1. 事件源

事件源是一种应用程序的设计风格,其中状态更改会产生一条带有时间戳的记录,然后将这条以时间序列产生的记录进行保存。在面对非常大的存储数据时,可以使用这种方式来构建非常优秀的后端程序。

Kafka使用场景
在实际开发中,Kafka通常作为一个统一的实时的数据接入源

也就是说:在大数据系统中, 实时数据都可以通过Kafka来将数据接入到大数据集群!
Kafka使用场景