不同于企业拉报表,这个查询对于响应时间要求很高。对于这个场景有什么好的解决方案吗?目测有10亿左右的数据。不需要复杂的组合过滤条件。
对于这个问题,我目前是这样考虑的。
对于此场景个人觉得hbase比较适合。数据量足够大但是对于查询的过滤条件不是很复杂,完全可以通过hbase来处理。首先hbase是基于rowkey的查询,通过简单条件拼接的rowkey将会很迅速的被查询出来。
至于效率的话。在一定的数量级下hbase是不如oracle的。但是在10亿数据级下,hbase和oracle同等查询的效率下,hbase的成本远低于oracle。另外,现在hbase也能支持后台应用的直接调用。可以说横向比较云计算里的hive hbase的查询性能更快。
同时如果复杂的条件查询可以引入solr作为hbase的二级缓存。但是hbase也不是万能的,对于一些汇总求和和模糊查询不是他擅长的,相应处理的时间也会变长。需要具体场景具体分析。