使用hbase进行聚合器。如何设计架构?

时间:2009-08-14 13:22:00

标签: schema feeds hbase

我正在开发一个涉及监控大量rss / atom feed的项目。我想使用hbase进行数据存储,我在设计模式时遇到了一些问题。对于第一次迭代,我希望能够生成聚合订阅源(所有订阅源中的最后100个帖子按逆时间顺序排列)。

目前我使用两张桌子:

Feeds: column families Content and Meta : raw feed stored in Content:raw
Urls: column families Content and Meta : raw post version store in Content:raw and the rest of the data found in RSS stored in Meta

我需要某种聚合Feed的索引表。我应该如何构建它? hbase是否适合这种应用?

问题更新:是否可以(在hbase中)设计一个可以有效回答下面列出的查询的模式?

SELECT data FROM Urls ORDER BY date DESC LIMIT 100

1 个答案:

答案 0 :(得分:2)

Peter Rietzler回答hbase用户邮件列表:

  

您好

     

在我们的项目中,我们正在处理事件   列出我们有类似的地方   要求。我们按订单排序   明智地选择我们的行键。我们用   以下是我们活动的关键(他们   应该按时间按升序排序   顺序):

     

eventListName / yyyyMMddHHmmssSSS-000 [-111]

     

其中eventListName是的名称   事件列表和000是三位数   实例id消除歧义   不同的运行实例   应用程序,-111是可选的   消除发生的事件的歧义   在一个实例上相同的毫秒。

     

我们另外插入和人工   ID为

的每一天的行      

eventListName / yyyyMMddHHmmssSSS

     

这允许我们开始扫描   没有的每一天的开始   搜索事件列表。

     

你需要意识到这一事实   如果你有很高的负荷   插入,然后总是一个hbase区域   服务器正在忙着插入   其他人都闲着......如果那是一个   问题,你必须找到   不同的钥匙为您的目的。

     

您也可以使用HBase索引   表但我没有经验   我记得邮件上有一封电子邮件   列出这会使所有人加倍   请求,因为API将首先   查找索引表然后查找   原表??? (请纠正我   如果这不对......)

     

亲切的问候,彼得

谢谢彼得。