Kafka在微软的使用

简介: Kafka Summit 2016中有一个微软MS/Bing团队的分享。看了数据给大家分析下。微软有一套服务化的数据管道EventHub,作为云产品售卖。但在Bing、Ads、Office等场景上仍在使用Kafka,在整个公司规模上大概是一半 vs 一半。主要使用Kafka考虑是Kafka与开源流处

Kafka Summit 2016中有一个微软MS/Bing团队的分享。看了数据给大家分析下。微软有一套服务化的数据管道EventHub,作为云产品售卖。但在Bing、Ads、Office等场景上仍在使用Kafka,在整个公司规模上大概是一半 vs 一半。主要使用Kafka考虑是Kafka与开源流处理系统结合得更好(spark、storm等)。

一些数据

先来看一些基础的数据:
screenshot

  • 一天500TB,如果协议中带了压缩,一天原始数据量为2.5 PB左右(5倍压缩率),并不是非常大
  • 大约1300台机器,每台机器处理384GB 数据。平均每台机器4MB/S写入流量,峰值约为6-7MB/S。说明效率并不是很高。3份拷贝计算,写入流量平均每台机器峰值20MB左右。
  • Incoming vs outcoming大约是1:3左右,说明数据有3-4个消费者
  • 1.3 Million/S 输入,一天500TB,一个包大小为4.4KB

从一年的变化量上来看,增长还是挺快的,说明微软从15年1月份开始投入开源的拥抱。

screenshot

架构

微软在Kafka上包了Collector收集器,和消费API,类似LogHub Client Lib (Consumer Group)
screenshot

在消费端做除了拖以外、还提供了推的模式。类似AWS Kinesis Firehose,LogHub 的Shipper。目标是Kafka 另外Topic,COSMOS(数仓)以及Hadooop。

screenshot

数据

做了一层Restful API

screenshot

为了能够使得数据有语义,没有采用Confluent的Schema Center,而是采用了在数据上加了一个Header,通过自描述语义构建了包的类型和版本等。

screenshot

为了能够支持微软的编程习惯,做了一套Kafka C# SDK,还是蛮拼的

监控

在监控E2E消费时,用了一个挺重的方法来测量延时。既把数据到达时间,消费时间通过Spark Streaming做了Join,显示在ELK上。这个其实大可不必这样,只要能够知道ConsumerGroup 消费的CheckPoint是否是最新的,就能够知道了,何必大费周折。

screenshot

结尾

微软用Kafka主要目的还是为了更容易使用流计算、ELK等开源软件,从安全性、使用上而言,Kafka在收集端、消费端、监控等仍有非常多的点需要提高。

很多用法、思路微软和我们其实挺像的,有兴趣可以了解下日志服务(LogHub)与Kafka对比,链接

目录
相关文章
|
消息中间件 监控 Kafka
Kafka集群监控系统Kafka Eagle部署与体验
Kafka集群监控系统Kafka Eagle部署与体验
484 0
Kafka集群监控系统Kafka Eagle部署与体验
|
22天前
|
消息中间件 存储 Prometheus
【Kafka】Kafka 提供了哪些系统工具
【4月更文挑战第11天】【Kafka】Kafka 提供了哪些系统工具
|
4月前
|
消息中间件 存储 负载均衡
Kafka - 3.x Kafka消费者不完全指北
Kafka - 3.x Kafka消费者不完全指北
53 0
|
4月前
|
消息中间件 存储 分布式计算
Apache Kafka-初体验Kafka(01)-入门整体认识kafka
Apache Kafka-初体验Kafka(01)-入门整体认识kafka
43 0
|
8月前
|
消息中间件 存储 监控
聊聊 Kafka: Kafka 的基础架构
聊聊 Kafka: Kafka 的基础架构
|
10月前
|
消息中间件 JSON 监控
Kafka Magic-Kafka开源可视化工具
Kafka Magic是一款Apache Kafka的Web UI可视化工具。
389 0
|
12月前
|
消息中间件 存储 分布式计算
[Kafka ]全面介绍Apache Kafka™
[Kafka ]全面介绍Apache Kafka™
|
消息中间件 存储 负载均衡
Zookeeper搭载kafka消息发布和订阅
ZooKeeper 是一个开源的分布式协调服务,由雅虎创建,是 Google Chubby 的开源实现。 分布式应用程序可以基于 ZooKeeper 实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、 集群管理、Master 选举、配置维护,名字服务、分布式同步、分布式锁和分布式队列等功能。
158 0
|
消息中间件 Java 关系型数据库
听说Windows10 不能安装Kafka Eagle?不能够吧,❤️炫酷❤️ Kafka管理后台 Kafka Eagle走起
听说Windows10 不能安装Kafka Eagle?不能够吧,❤️炫酷❤️ Kafka管理后台 Kafka Eagle走起
447 0
听说Windows10 不能安装Kafka Eagle?不能够吧,❤️炫酷❤️ Kafka管理后台 Kafka Eagle走起
|
消息中间件 存储 SQL
Kafka监控必备——Kafka-Eagle 2.0.2正式发布
对于经常使用Kafka的同学,拥有一个炫酷又实用的监控系统是非常有必要的。可以实时的监控数据流的情况,了解实时数据流的变化。
311 0
Kafka监控必备——Kafka-Eagle 2.0.2正式发布