一个分析系统, 需要按照日期和一个 index 来查询所有符合条件的 id. 再去重,然后通过 ID 来拿相对的属性.
现有的架构是用 Hbase 来存储数据, 以date_index
为 rowkey, id
作为 qualifier, 查询直接拿 key 去 get, 简单测试发现取得数据的速度达不到要求. 获取两条数据花费接近两分钟... 实际查询需要获取上百条...
再之前的做法是以id
为 rowkey, date_index
作为 qualifier 然后使用 Hbase 的 ColumnPrefixFilter 来过滤再取所有的 rowkey, 但是查 doc 发现 filter 会做全表扫描... 鉴于数据量每天的增长大概在百万级, 这个性能会随着运行时间越来越差...
现在的想法是用 ElasticSearch 来做, 直接把属性也索引进去, 求问有没有什么更好的做法...
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.