码迷,mamicode.com
首页 > 其他好文 > 详细

Kafka详解

时间:2015-08-25 17:03:36      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:kafka


实际上kafka对机器的需求与Hadoop的类似。


原来,对于Linkin这样的互联网企业来说,用户和网站上产生的数据有三种:

需要实时响应的交易数据,用户提交一个表单,输入一段内容,这种数据最后是存放在关系数据库(Oracle, MySQL)中的,有些需要事务支持。
活动流数据,准实时的,例如页面访问量、用户行为、搜索情况,这些数据可以产生啥?广播、排序、个性化推荐、运营监控等。这种数据一般是前端服务器先写文件,然后通过批量的方式把文件倒到Hadoop这种大数据分析器里面慢慢整。
各个层面程序产生的日志,例如httpd的日志、tomcat的日志、其他各种程序产生的日志。码农专用,这种数据一个是用来监控报警,还有就是用来做分析。

Linkin的牛逼之处,就在于他们发现了原先2,3的数据处理方式有问题,对于2而言,原来动辄一两个钟头批处理一次的方式已经不行了,用户在一次购买完之后最好马上就能看到相关的推荐。而对于3而言,传统的syslog模式等也不好用,而且很多情况下2和3用的是同一批数据,只是数据消费者不一样。
这2种数据的特点是:

准实时,不需要秒级响应,分钟级别即可。
数据量巨大,是交易数据的10倍以上。
数据消费者众多,例如评级、投票、排序、个性化推荐、安全、运营监控、程序监控、后期报表等

于是,Linkin就自己开发了一套系统,专门用来处理这种性质的数据,这就是Kafka



因为每条消息都被append到该partition中,是顺序写磁盘,因此效率非常高(经验证,顺序写磁盘效率比随机写内存还要高,这是Kafka高吞吐率的一个很重要的保证)。


Kafka内部架构图,分为数据产生者(Producer),数据中间者(Broker),数据消费者(Consumer)


技术分享



参考文章:


http://blog.csdn.net/qqqq724/article/details/43228863


http://www.cnblogs.com/likehua/p/3999538.html

 

 实例文章:


http://zhangfengzhe.blog.51cto.com/8855103/1561021


搭建kafka运行环境

http://zhangfengzhe.blog.51cto.com/8855103/1556650


Kafka JAVA客户端代码示例

http://my.oschina.net/cloudcoder/blog/299215

 

  

本文出自 “一无所有-天行者” 博客,请务必保留此出处http://tianxingzhe.blog.51cto.com/3390077/1688044

Kafka详解

标签:kafka

原文地址:http://tianxingzhe.blog.51cto.com/3390077/1688044

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!