哪个更适合日志分析

问题描述 投票:2回答:4

我必须使用Hadoop相关工具分析存储在生产服务器上的Gzip压缩日志文件。

我无法决定如何做到这一点,以及使用什么,这里有一些我想使用的方法(随意推荐别的东西):

  • 水槽
  • 卡夫卡
  • 地图减少

在我可以做任何事情之前,我需要从生产服务器获取压缩文件并处理它们然后将它们推送到Apache HBase

hadoop mapreduce apache-spark apache-storm flume
4个回答
4
投票

根据日志的大小(假设计算不适合单个计算机,即需要“大数据”产品),我认为最适合使用Apache Spark。鉴于您对生态系统了解不多,最好与Databricks Cloud一起使用,这将为您提供一种直接从HDFS读取日志并以可视方式(使用Notebook)使用Spark转换进行分析的方法。

你可以在上面的链接找到this video。 有一个免费试用版,所以你可以看到它将如何然后决定。

PS我与Databricks没有任何关系。只是觉得他们有一个很棒的产品,就是这样:)


1
投票

您混合了许多相互关联的概念,这些概念不是彼此的替代品。

看看hadoop ecosystem

Apache Map Reduce是:基于YARN(又一个资源协商器)的系统,用于并行处理大型数据集。它提供简单的编程API。

Apache Kafka是一个分布式发布 - 订阅系统,用于处理大量流数据。您可以将Kafka视为一个简单的“消息存储”

Apache Flume专门用于收集,聚合和将大量日志数据(以非结构化格式)移动到HDFS系统中。它从各种HTTP源和Web服务器收集数据。

一旦将数据从Flume导入HDFS,就可以将其转换为带有PIG或Hive的结构化数据,并且可以以结构化形式生成报告。 PIG或HIVE运行一系列Map Reduce Jobs来处理这些数据并生成报告。

看看这个article,以便更好地理解日志文件处理架构。


0
投票

您提到的每个工具都在做其他事情 -

Flume是一种分布式,可靠且可用的服务,用于高效收集,聚合和移动大量日志数据

Apache Kafka是发布 - 订阅消息重新考虑作为分布式提交日志Map reduce更多是用于处理数据的设计模式。

我的建议是更好地定义你真正想要检查相关工具的内容。


0
投票

由于我将日志文件存储在生产服务器中,因此我将这些文件复制到HDFS中,并编写了mapreduce程序来处理它。

我认为@Marko Bonaci的答案是有效的,我们可以尝试用spark来分析日志文件。

谢谢大家的宝贵意见。

© www.soinside.com 2019 - 2024. All rights reserved.