我需要分析1 TB的Web访问日志,特别是我需要分析有关URL(子分支)的请求的URL和子集的统计信息.如果可能的话,我希望查询能够快速地覆盖数据的小数据集(例如1000万个请求).
例如,给定访问日志,请求以下URL:
/ocp/about_us.html /ocp/security/ed-209/patches/urgent.html /ocp/security/rc/ /ocp/food/ /weyland-yutani/products/
我想做一些查询,如:
>计算“/ ocp”下面的所有内容的请求数.
>与上述相同,但只计数/ ocp / security下的子节点请求
>返回前5个最常请求的URL.
>与上述相同,除了任意深度的组外,
例如对于上面的最后一个查询,数据的深度2将返回:
2: /ocp/security/ 1: /ocp/ 1: /ocp/food/ 1: /weyland-yutani/products/
我认为理想的方法可能是使用列DB并对URL进行标记,以便URL中的每个元素都有一列.但是,如果可能的话,我真的很想找到一个开源应用程序的方法. HBase是一种可能性,但查询性能似乎太慢,无法用于实时查询(同样,我也不希望重新实现sql)
我知道有这样的分析的商业应用程序,但由于种种原因,我想自己实现这一点.