【问题标题】:Which is better for log analysis哪个更适合日志分析
【发布时间】:2015-11-24 07:51:19
【问题描述】:

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

我无法决定如何做到这一点,以及使用什么,以下是我考虑使用的一些方法(请随意推荐其他方法):

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

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

【问题讨论】:

  • 用apache钻怎么样?
  • 日志有多大(未压缩)?
  • 马克,每个日志实际上是 200MB,并且大部分是 10 个文件。
  • 所以您说的是每天可能有 2GB 的日志数据? hbase 是一个严格的要求吗,因为对于这么少的数据来说它似乎有点过分了(你可以在一个 HDD 上放置几年的价值)。如果您有一定的灵活性,@MarkoBonaci 的 Databricks 建议很合适,或者查看类似 Splunk 之类的东西,它几乎是为这种情况设计的。
  • 谢谢马克,但我们还没有确认。

标签: hadoop mapreduce apache-spark apache-storm flume


【解决方案1】:

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

您可以在上面的链接中找到this video
有一个免费试用版,所以你可以看看会怎样,然后再决定。

PS 我绝不隶属于 Databricks。想想他们有很棒的产品,仅此而已:)

【讨论】:

    【解决方案2】:

    您混合了许多相互关联的概念,它们不能相互替代。

    看看hadoopecosystem

    Apache Map Reduce 是:一个基于 YARN(Yet Another Resource Negotiator)的系统,用于并行处理大型数据集。提供简单的编程API。

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

    Apache Flume 专为将大量日志数据(非结构化格式)收集、聚合和移动到 HDFS 系统而设计.它从各种 HTTP 源和 Web 服务器收集数据。

    数据从 Flume 导入 HDFS 后,可以使用 PIG 或 Hive 将其转换为结构化数据,并以结构化形式生成报告。 PIGHIVE 运行一系列 Map Reduce 作业来处理这些数据并生成报告。

    查看此article 以更好地了解日志文件处理架构。

    【讨论】:

    • 抱歉 Ravindra,我之前没有正确格式化我的问题。刚刚我又编辑了,请您再检查一下。
    【解决方案3】:

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

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

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

    我的建议是更好地定义您真正寻找的东西并检查相关工具。

    【讨论】:

    • 对不起,汤姆,我刚刚编辑了我的问题。请您再检查一下我的问题。
    【解决方案4】:

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

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

    感谢大家的宝贵意见。

    【讨论】:

      猜你喜欢
      • 2016-04-13
      • 1970-01-01
      • 1970-01-01
      • 2013-07-05
      • 1970-01-01
      • 1970-01-01
      • 2017-10-02
      • 2012-09-02
      • 2011-04-17
      相关资源
      最近更新 更多