当前位置: 首页 > news >正文

Elasticsearch7.8.0版本优化——路由选择

目录

    • 一、Elasticsearch 如何知道一个文档存放在哪个分片
    • 二、不带 routing 查询
    • 三、带 routing 查询

一、Elasticsearch 如何知道一个文档存放在哪个分片

  • 其实是通过这个公式来计算出来:shard = hash(routing) % number_of_primary_shards
  • routing 默认值是文档的 id,也可以采用自定义值,比如用户 id。

二、不带 routing 查询

  • 在查询的时候因为不知道要查询的数据具体在哪个分片上,所以整个过程分为 如下2 个步骤:

    1、分发:请求到达协调节点后,协调节点将查询请求分发到每个分片上。

    2、聚合: 协调节点搜集到每个分片上查询结果,在将查询的结果进行排序,之后给用户返回结果。

三、带 routing 查询

  • 查询的时候,可以直接根据 routing 信息定位到某个分配查询,不需要查询所有的分配,经过协调节点排序。
  • 自定义的用户查询,如果 routing 设置为 userid 的话,就可以直接查询出数据来,效率提升很多。
http://www.lryc.cn/news/23979.html

相关文章:

  • Go常量的定义和使用const,const特性“隐式重复前一个表达式”,以及iota枚举常量的使用
  • Git学习(1)pro git阅读
  • PHY自协商
  • 【大数据离线开发】8.2 Hive的安装和配置
  • Capture Modules:车载网络报文捕获模块
  • 数据结构与算法系列之时间与空间复杂度
  • Python代码使用PyQt5制作界面并封装
  • 【Node.js】MySQL数据库的第三方模块(mysql)
  • Docker中安装并配置单机版redis
  • 模拟微信聊天-课后程序(JAVA基础案例教程-黑马程序员编著-第八章-课后作业)
  • html2canvas将页面dom元素内容渲染成图片保存至本地
  • 前端进阶JS运行原理
  • Python识别二维码的两种方法(cv2)
  • 用一个例子告诉你 怎样使用Spark中RDD的算子
  • 什么是跨域? 出现原因及解决方法
  • 低代码系统能够解决哪些痛点?
  • 华为OD机试题,用 Java 解【两数之和绝对值最小】问题
  • AcWing算法提高课-3.1.1热浪
  • 华为OD机试题【最差产品奖】用 C++ 编码,速通 (2023.Q1)
  • NFT市场大战:Blur市场地位可持续吗?
  • 初识CSS
  • kubernetes(k8s)知识总结(第3期)
  • 浅谈跨境电商运行模式
  • Memcached
  • Unity UGUI 拖拽组件
  • 面试总结——react生命周期
  • 初探推荐系统-01
  • html实现浪漫的爱情日记(附源码)
  • detectron2容器环境安装问题(1)
  • JAVA线程池原理详解二