码迷,mamicode.com
首页 > 其他好文 > 详细

ElasticSearch - 遐想

时间:2019-12-06 00:19:29      阅读:89      评论:0      收藏:0      [点我收藏+]

标签:try   解决   dex   出版   cse   一个   auth   场景   方案   

众所周知,ElasticSearch 存在一个问题,无法查询最近 1s 的写入。近实时这个属性,限制了其在某些场景的应用。本文记录了我在日常工作中想到的,解决特定场景的一些方案。既然是记录,便会有好有坏,仅供大家参考。

预设上下文

一个书籍(book)索引(index),文档(doc)属性有:名称(name),出版年份(year),作者(author),价格(price),价格区间(price_range),国家(country)

总体约定

  • 1s 盲区问题是 es 的固有缺陷,本文约定,所有的解决方案都引入额外的工具来弥补这个缺陷

存在性查询

场景描述

所有书籍的价格被划分为少数几个区间。希望查询价格为某个区间的文档是否存在。

解决方案

写文档时,维护一个(价格区间,更新时间)辅助表。查询时先查询 es ,然后查询辅助表。如果不存在,则相信 es 结果;如果近 1s 内没有更新,则相信 es 结果;如果近 1s 内存在更新,可以假设存在。

ElasticSearch - 遐想

标签:try   解决   dex   出版   cse   一个   auth   场景   方案   

原文地址:https://www.cnblogs.com/WessonStar/p/11992604.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!