我从事日志集中项目。
我正在与ELK一起收集/汇总/存储/可视化我的数据。我看到Kafka可以用于大量数据,但是 我无法从使用它可能变得有趣的数据量中找到信息。
每天10 Giga的日志?少一点,多一点?感谢您的帮助。
答案 0 :(得分:1)
让我们以两种方式解决这个问题。
Kafka适合哪些数据量? Kafka规模较小(Netflix,Uber,Paypal,Twitter等)使用。
如果需要,您可以从三个代理的群集开始,这些群集处理几个MB,然后根据需要从那里进行扩展。在Kafka中,每天10 Gb的数据将是完全合理的,但减少十倍或十倍是十倍。
Kafka适用于什么?就您的问题而言,Kafka是系统之间事件驱动的集成点。它可以是一个“哑”管道,但是由于它保留了可以在其他地方重新使用的数据。它还提供native stream processing capabilities和integration with other systems。
如果您正在做的所有事情正在将日志记录到Elasticsearch中,则Kafka可能会过大。但是,如果您想在其他地方(例如HDFS,S3等)使用该日志数据,或者对其进行处理以进行模式处理,或者对其进行过滤以进行条件路由到其他地方,那么Kafka将是一个明智的选择。 This talk探索了其中一些概念。
就ELK和Kafka而言,Logstash和Beats可以写为Kafka作为输出,并且有一个Kafka Connect connector for Elasticsearch
免责声明:我为Confluent工作。