我需要一些关于选择nosql解决方案以及如何为我的数据设计模式的建议。现在我正在考虑hbase,但如果你认为这不是一个好的选择,请给我建议。
我有大约10tb(少一点)的文本日志数据。格式是这样的。 | key1 | key2 | timestamp | column1 | column2 | column3 | column 4 |
我的要求如下。
我需要通过{key1,key2}获取数据,结果将是{timestamp,column1}数组或{timestamp,columnn}数组。每个数组大小不会超过1000。
需要使用日期范围筛选器获取数据。
键1的唯一计数可能超过10亿。这就是为什么数据量如此之大。
列1和列2很难同时访问。
结果数组大小将随着时间的推移而增长,所以我需要清理一些旧数据(列值不会被修改,但会在数据过期时被删除。)
现在我考虑这样一个模式。 rowkey - | key1, key2 | column family - column1_type, column2_type , ..... , columnN_type column - key :timestamp, value: columnN_value
我没有hbase方面的经验。一条建议会很有帮助的谢谢。
1条答案
按热度按时间nuypyhwy1#
一个名为opentsdb的现有解决方案可用于处理时间序列数据。opentsdb是一个可扩展的分布式时间序列数据库。它使用hbase来存储和检索时间序列数据。