作者:禅与计算机程序设计艺术
1.简介
2011年3月,LinkedIn公司推出了分布式计算系统Kafka。它是一个开源分布式流处理平台,由Scala开发而成,最初被设计用于处理实时数据流。它能够处理具有低延迟、高吞吐量的实时数据,并可用于传输各种数据,如日志、网站点击流、交易等。
在过去的一段时间里,Kafka社区已然成为一个活跃的社区,社区经验丰富的成员也积极参与到Kafka的讨论中,共同构建Kafka的生态圈。Apache基金会近年来也在不断吸引着越来越多的大公司加入到Kafka的阵营当中。包括Yahoo、Twitter、LinkedIn、Facebook、Pinterest、Uber等大型公司都纷纷加入到了Kafka社区。其中包括UC Berkeley AMPLab(人类面相工程实验室)、Databricks、Stripe、Cloudera、Confluent、IBM等知名技术企业。
本文将详细阐述关于Kafka背后的理论知识以及一些具体操作技巧,还将以Spark Streaming为代表的另一种流处理框架与Kafka进行比较,并对比其异同点。最后,本文还将给出一些常见问题及相应的解答。
2.基本概念术语说明
2.1 什么是Kafka?
Kafka是分布式流处理平台,它是一个开源项目,由Apache So