改进HBase数据模型

时间:2013-09-17 08:37:48

标签: java database-design hbase

我开始使用HBase,我想知道我设计的模型是否合适,如果是,如何改进服务器端的查询。

我想在HTML表格中显示一些用户信息,首次显示摘要信息,当您点击时,会显示详细信息。

这是模型:

SUMMARIZED_INFO_PER_USER:

Key Sum:1_Field1 Sum:1_Field2 Sum:2_Field1 Sum:2_Field2 ... Id:698745874588 Id:698745874580

 90     Value11       Value12     Value21      Value22   ...       1                2

DETAILED_INFO:

Key  Det:Field1  Det:Field2  Det:Field3  Det:Field4  ....

 1     Value11     Value12     Value13    Value14

 2     Value21     Value22     Value23    Value24

给定一个特定用户(90),我在汇总的详细信息表中有一个名为Id的列系列,其中时间戳作为列名称(受益于自动后代顺序),其具有详细信息Id(1,2 ... ),和第二个家庭(总和),其中有我希望在第一眼看到的字段。

此外,我还有第二个表格,其中将详细信息ID(1,2 ...)访问的所有详细信息存储为行。

我对这个模型的主要担忧是:

  • 这是访问为用户保存的最后记录的最佳方式还是可以改进?

  • 我目前正在为给定用户提供整行。然后我获取ID系列,读取最后10条记录,并按列名称获取此数据:[ID_VALUE]_Field1, [ID_VALUE]_Field2, and so on。有没有办法在HBase中执行此操作,而不是在Java服务器中执行此操作?我想知道当用户有1m记录时会发生什么,会有1m(Id)+ Xm(Sum)列......

  • 我害怕将这两个表合二为一,因为该表会在列中大量增加,但如果我将它保存在两个表中,则不会。我们有比用户更多的项目,所以我认为正常增长应该是行,而不是列。我错了吗?

0 个答案:

没有答案