kafka
Posted laosun0204
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kafka相关的知识,希望对你有一定的参考价值。
Apache kafka是一个分布式消息发布订阅系统,可以处理大量的数据,并且能够将消息从一个端点传递到另一个端点。Kafka适合离线和在线消息消费(日常使用当中还是实时在线消息),消息可以保留在磁盘上,并在集群内复制以防止数据丢失(如果读到500时断电了,来电后从501继续读,防止数据丢失,也不会继续读前500条)
在大数据系统中,常常会碰到一个问题,整个大数据是由各个子系统组成,数据需要在各个子系统中高性能、低延迟的不停流转。传统的企业消息系统并不是非常适合大规模的数据处理。为了同时搞定在线应用(消息)和离线应用(数据文件、日志)kafka就出现了
可靠性:kafka是分布式、分区、复制和容错的
可扩展性:kafka消息传递系统轻松缩放,无需停机
耐用性:kafka使用分布式提交日志,这意味着消息会尽可能快地保留在磁盘上,因此它是持久的
高性能:kafka对于发布和订阅消息都具有高吞吐量,kafka每秒可以生产约25万消息(50MB),每秒处理55万消息(110MB)
持久性、可靠性:消息被持久化到本地磁盘,并且支持数据备份,防止数据丢失
kafka的使用场景:
日志收集:一个公司可以用kafka收集各种服务的log,可以通过logstash(占用内存小)或flume(占用内存大)采集,通过kafka以统一接口服务的方式开放给各种consumer,例如hadoop、Hbase、Solr等
以上是关于kafka的主要内容,如果未能解决你的问题,请参考以下文章
大数据技术之KafkaKafka APIKafka监控Flume对接KafkaKafka面试题