HBase表模型

时间:2017-06-30 08:41:04

标签: database-design hbase

我正在学习如何使用HBase。我需要在数据库中放入几辆汽车的每次旅行(通过地理定位点(xy))。这些数据以JSON格式提供。

问题是旅行期间地理定位的点数会因我恢复的每个文件而发生变化。 (每次旅行都不同。)

如何将这些数据存储在HBase中?

我是否必须更改插入的每行的列数?

  • Trip1:x1,y1,x2,y2,x3,y3
  • Trip2:x1,y1,x2,y2,x3,y3,x4,y4

或者我是否只需要保留2列,一列适用于所有x,一列适用于所有y

  • Trip1:(X,Y)
  • Trip2:(X,Y)

1 个答案:

答案 0 :(得分:0)

据我所知,每次旅行都是(x,y)坐标的时间序列。我建议遵循架构设计:

Row key = shardKey + tripId + timestamp,每行都有xy列。 分片键可以是(tripId % number of regions),这可以防止热点。 这将允许通过一个区域的单次扫描检索每次旅行的数据。