2013-05-13 40 views
1

我有很多的日志行,每个都有一段时间,我想存储在HDFS中并进行分析。我想运行MapReduce作业,它只处理给定时间范围内的行(最后5分钟,最后一小时)。如何在HDFS中存储和分析时间戳日志

我正在寻找指针开始。而且,任何替代品(例如,存储线HBase的其它平台?)

+0

解释更详细 – smttsp 2013-05-13 18:42:03

回答

1

我的2美分:

您可以使用HBase的为。读取文件的每一行,取出TS字段并将其用作rowkey并将行的其余部分存储在列中。所以我们的桌子只有一列。这将允许你做更快的范围查询,就像你需要的(最后5分钟,最后一个小时等)。并且为了避免regionserver热点,你可以创建预分割表。

或者,您可以将数据存储在由TS分区的Hive表中,然后通过HiveQL进行处理。或者基于TS存储数据。简单而直接。

HTH

0

虽然日志处理可以用地图来完成/减少与蜂巢/ HBase的组合方案,Hadoop的方法可能不适合处理在频繁的时间间隔作为Map日志合身/缩小方案是专为批量处理。的Apache KafkaStorm组合非常适合于处理日志您的要求

您也可以看看这个link