我是Big Data的新手,从最近几周开始,我尝试构建日志分析应用程序。
我阅读了很多文章,我发现Kafka + spark streaming是最可靠的配置。
现在,我能够处理从我的简单kafka java生成器发送的数据到spark Streaming。
有人可以提出一些建议 1)我如何实时读取服务器日志并将其传递给kafka经纪人。 2)任何可用于将数据从日志推送到Kafka的框架? 3)任何其他建议??
谢谢, Chowdary
答案 0 :(得分:1)
有很多方法可以收集日志并发送给Kafka。如果您希望将日志文件作为事件流发送,我建议您查看Logstash / Filebeats - 只需将您输入为fileinput并输出到Kafka。
您还可以使用log4j KafkaAppender将数据推送到Kafka,或者使用许多已有的CLI工具将数据传输到Kafka。
如果您需要保证顺序,请注意分区配置和分区选择逻辑。例如,log4j appender将在所有分区上分发消息。由于Kafka仅保证每个分区的序列,因此您的Spark流式作业可能会开始不按顺序处理事件。