在过去,我用来建立使用MySQL的运行OLAP多维数据集网页分析。 现在OLAP多维数据集,我用它简直就是一个大表(好吧,它比存储在一个有点聪明)的方式,其中每一行基本上是一种测量或和聚合组测量。 每个测量有一堆尺寸(即,页面名,用户代理,IP等)和一束值(即多少浏览量,多少访问者等)。
你喜欢这个表上运行的查询通常的形式为(元-SQL)的:
SELECT SUM(hits), SUM(bytes),
FROM MyCube
WHERE date='20090914' and pagename='Homepage' and browser!='googlebot'
GROUP BY hour
所以,你得到的总和与所提到的过滤器选择一天中的每个小时。 其中一个障碍是,这些立方体通常意味着全表扫描(各种原因),这意味着实际限制的大小(MIB),你可以做这些事情。
目前,我正在学习Hadoop和喜欢的来龙去脉。
运行上面的查询作为一个BigTable的映射缩减看起来很容易:只要使“小时”的关键,过滤器在地图和值相加降低。
你可以运行一个查询像我上面(或具有相同的输出至少)在BigTable的一种制度在“实时”(即通过一个用户界面和用户那里得到的他们的回答ASAP)显示,而不是批处理模式?
如果不; 什么是适当的技术做这样的事情在BigTable的/ Hadoop的/ HBase的/蜂巢和喜欢的境界?
它甚至那种已经完成(那种)。
LastFM等的聚合/摘要引擎: http://github.com/zohmg/zohmg
谷歌搜索变成了一个谷歌代码项目“mroll”,但它不具有除联系人信息(没有代码,没有)什么。 不过,可能想伸手去那家伙,看看这是怎么回事。 http://code.google.com/p/mroll/
We managed to create low latency OLAP in HBase by preagragating a SQL query and mapping it into appropriate Hbase qualifiers. For more detail visit below site.
http://soumyajitswain.blogspot.in/2012/10/hbase-low-latency-olap.html
我的回答涉及HBase的,但同样适用于BigTable的。
城市飞艇开源数据立方体 ,我认为这是接近你想要什么。 见他们的表现在这里。
Adobe还拥有一对夫妇介绍的( 这里和这里 ),他们怎么办?“低延迟OLAP”与HBase的。
如果你正在寻找一个表扫描的方式,你认为谷歌的BigQuery? BigQuery的做的背面,让交互响应自动向外扩展。 有一个从解释一些内部的谷歌2012 I / O活动的好会议约旦Tigani。
http://www.youtube.com/watch?v=QI8623HlYd4
这不是MapReduce的,但它是对像你所描述的高速表扫描减速。
安德烈·德拉戈米尔做了一个有趣的谈话有关Adobe如何执行与M / R和HBase的OLAP功能。
视频: http://www.youtube.com/watch?v=5U3EnfiKs44
幻灯片: http://hstack.org/hbasecon-low-latency-olap-with-hbase/