大牛总结分享:大数据技术Storm和Kafka 哪些场景更适合

现在大数据中应用较多的有Hadoop,Hive,Flume,Kafka,Storm,Spark这些技术。那么我今天给大家分享一下Storm和Kafka这两个技术。

介绍

Storm是Twitter开源的一个分布式的实时大数据计算系统。Kafka是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统。

下面就从特点和应用场景进行说明

Kafka特点

同时为发布和订阅提供高吞吐量。

持久化操作。将消息持久化到磁盘,因此可用于批量消费。

分布式系统,易于向外扩展。

Storm的特点

简单的编程模型。可以使用各种编程语言。

容错性。水平扩展。

可靠的消息处理。快速。

本地模式。

Kafka的应用场景

消息队列。与其它消息系统来比,Kafka有更好的吞吐量,内置的分区,冗余及容错性,这让Kafka成为了一个很好的大规模消息处理应用的解决方案。

行为跟踪。Kafka的另一个应用场景是跟踪用户浏览页面、搜索及其他行为,以发布-订阅的模式实时记录到对应的topic里。那么这些结果被订阅者拿到后,就可以做进一步的实时处理,或实时监控,或放到hadoop/离线数据仓库里处理。

元信息监控。

流处理。这个场景比较多。保存收集流数据,以提供之后对接的Storm或其他流式计算框架进行处理。

持久性日志(commit log)。Kafka可以为一种外部的持久性日志的分布式系统提供服务。这种日志可以在节点间备份数据,并为故障节点数据回复提供一种重新同步的机制。

Storm应用场景

数据流处理,持续计算,分布式远程过程调用,求TopN,推荐系统和热度统计等。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180429A1CS1P00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券