我正在使用 InfiniDB 将大量行(大约 100-5 亿)聚合到大约不到 5000 个组。(在大多数查询中,过滤了 100-5 亿行,因此聚合将在更少的行上起作用)
它被用作网站旅行搜索引擎的原型,您可以将其视为“为特定人数的所有房间组合提供最优惠的每间住宿价格”。
它工作正常,直到我必须多次自我加入表格,才能找到最优惠的价格组合(它已经通过逻辑过滤器减少了,因此每个连接的组合数量也减少了)
我可以将表的内容拆分到不同的表中,并且它的性能可以接受,但是现在我问自己 infinidb(或一般的面向列的数据库)是否是解决这个问题的最佳解决方案。
什么是替代品?我认为每个 map/reduce 机制(mongodb、hadoop)都会慢得多,还是我想念它?
它不应该需要超过 2-5 台服务器。
说清楚:我不指望“这将是完美的!” 答案,但对替代品的良好提示。我也认为 infinidb 对我的场景来说是一个糟糕的解决方案。
感谢您的想法!