首页 > 其他分享 >ES路由计算与分片控制

ES路由计算与分片控制

时间:2024-02-22 16:33:35浏览次数:23  
标签:副本 机器 ES 分片 数据 路由

ES路由计算与分片控制

ES存储数据到哪一块分片是按照当前数据的hash值与分片书取模决定的,即路由计算 = hash(id) % 分片数。

当某块分片具备的该条数据,那它的副本都会存在,因此这就引申出了分片控制?
只要该台机器的副本有数据,就能访问到,因此分片控制最好控制再每台机器都存有某块分片的副本/主分片

  • 协调节点即用户访问的集群某一台机器的地址(用户并不知道数据在哪一台,只是这图刚好每一台都有副本/主分片),协调节点会自动计算用户想要的数据在哪台机器,然后找到并反馈给用户,如果每台机器都有对应的副本/主分片,这样可以让集群自己决定访问哪台机器获取数据(选取压力不大的机器获取),起到类似负载均衡的作用

ES写流程

ES的写数据机制有点类似kafka生产者的ack机制,具体可看下图。

ES读流程

标签:副本,机器,ES,分片,数据,路由
From: https://www.cnblogs.com/Mr-Sponge/p/18027631

相关文章

  • 1、ES中重要概念介绍
    Elasticsearch是一个基于Lucene的搜索服务器,提供了一个分布式多租户能力的全文搜索引擎,基于RESTfulweb接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计Elasticsearch的目的是通过简单的RESTfulAPI来隐藏Lucene的复杂性......
  • 2、RestAPI介绍
    RestAPI简单介绍REST的作用是将我们上面提到的查看(view),创建(create),编辑(edit)和删除(delete)直接映射到HTTP中已实现的GET,POST,PUT和DELETE方法。这四种方法是比较常用的,HTTP总共包含八种方法:GETPOSTPUTDELETEOPTIONSHEADTRACECONNECT当我们在浏览器点点点的时候我们通......
  • 3、ES基础http命令
    创建索引curl-XPUThttp://localhost:9200/shopping创建索引使用-X参数指定PUT请求,ES7.x后默认创建索引是1个分片数PUT请求是幂等性的,如果重复创建,会报错Linux中用curl命令操作ES需指定用户名密码(本文省略),具体样例如下:curl-uname:passwod-XPUThttp://localhost:9......
  • 4、ES查询语句
    批量索引文档如果你有大量文档要索引,你能通过批量API(bulkAPI)来批量提交它们。批量文档操作比单独提交请求显著更快,因为它极简了网络往返。最佳的批量数量取决于许多因素:文档的大小和复杂度、索引和搜索的负载以及集群可用资源。一种好的方式是批量处理1,000到5,000个文档......
  • LM Studio装载模型时提示:You have 1 uncategorized model files
    使用LMStudio载入已经下载的模型的时候报错: 当前本地模型路径是默认的models路径,模型文件在models下面。 解决办法:在models目录下新建目录:Publisher\Repository即: 将模型文件移动到Repository中,重启LMStudio即可。......
  • Python数据类型中bytes 与 bytearray
    在Python中,我们可以使用bytes和bytearray两种数据类型来处理二进制数据。bytes是一个不可变的序列类型,而bytearray是一个可变的序列类型。本文将介绍如何使用Python来创建、操作和转换bytes和bytearray。bytes:可以看作是一组二进制数值(0-255)的str序列bytearray:可以看......
  • NanoFramework操作ESP32(一)_基础元器件篇(二十六)_ KY-028热敏传感器(数字温度)
    一、元器件介绍    检测环境温度1、针脚用途编号名称功能1AO模拟量输出2G电源地3+电源正4DO开关量输出,温度高于某值时输出高电压,低于阀值时输出低电平二、示例代码1、代码:元器件的针脚ESP32模块的针脚AO;声音......
  • 一般处理程序中的IRequiresSessionState
    一般处理程序中,还未跑入主程序,就直接断掉了,按F12提示错误:异常详细信息:System.Web.HttpException:请求在此上下文中不可用第一次遇见这种情况,百思不得其解,通过与以前的代码对比,发现少了一个接口IRequiresSessionState,加上后可以了!!! 接口的简介:在一般处理程序中,如果要使用Se......
  • NanoFramework操作ESP32(一)_基础元器件篇(四十一)_ 线性霍尔传感器
    一、元器件介绍    触摸感应头即可激活电路。1、针脚用途编号名称功能1AO模拟量输出2G电源地3+电源正4DO开关量输出,检测到磁性时输出高电压,低于阀值时输出低电平二、示例代码1、代码:元器件的针脚ESP32模块的针脚......
  • ant design vue a-transfer使用vuedraggable穿梭框拖动效果
    npminstall vuedraggable--save vue<template><a-formlayout="vertical"><a-form-itemlabel="模板"><a-transfershow-search:data-source="tableFieldSource"......