【发布时间】:2018-03-06 19:39:45
【问题描述】:
背景: 我有一个巨大的数据流 - 每小时最多 1000000 条记录,ttl 是 3 小时......每个“文档”包含大约 20 个属性,我需要使用“==”同时搜索多达 15 个属性,“ IN”和“BETWEEN”比较。
由于几乎没有不可搜索的属性,因此没有理由将文档存储两次(在 Couchbase 和 ElasticSearch 索引中),所以我认为只将它存储在 ElasticSearch 中是个好主意。我是对的?
或者也许有人可以推荐我更好的数据库来完成这项任务?我将来需要一个easy水平扩展(MySQL的自定义分片不是一个选项)...... 这些数据是某种缓存,因此最终的一致性和较差的持久性是可以的......
根据 CAP 定理,我主要需要 A 和 P...
【问题讨论】:
-
查询是否会即时更改,或者它们是否总是查询具有大致相同值的相同属性?
-
我正在使用的系统是“旅游聚合器/搜索”,数据项实际上是包含以下内容的旅游:出发日期、出发国家、持续时间、度假村、酒店类别、膳食类型、价格、酒店等。大多数时候人们在具体出发日期范围内搜索从具体出发城市到具体国家(或度假村)的最便宜的旅行。
标签: elasticsearch couchbase database nosql