我有大量的日志文件存储在 HDFS 中,如下所示:
2012-10-20 00:05:00; BEGIN
...
SQL ERROR -678: Error message
...
2012-10-20 00:47:20; END
我想知道某个时间范围内某些 sql 错误代码发生的频率,例如:从 2012 年 10 月 20 日凌晨 0:00 到 2012 年 10 月 20 日凌晨 1:00 发生了多少 678 个 SQL 错误。
由于文件通常被分成几个块,它们可以分布在所有数据节点之间。
这样的查询可能吗?我想使用 hadoop mapreduce Java API 或 Apache Pig,但我不知道如何应用时间框架条件。