1.ElasticSearch的工作流程

1.启动过程

​ 当ElasticSearch节点启动时,使用发现(discovery)模块来发现集群中的其他节点(配置文件的集群名称)并连接.ElasticSearch会发送广播,以找到相同集群名称其他节点。

​ 集群选举一个节点为主节点。该节点负责分发索引分片到集群相应节点。

​ 管理节点读取集群状态信息,并且可以进行恢复处理。该阶段,管理节点会检查有那些索引分片,并决定哪些为主分片。

2.故障检测

​ 集群正常工作,管理节点会监控所有可用节点。如果超时未响应则认为节点断开,就要重新选择新的主节点。

​ 对每个丢失的主分片,一个新的主分片将从原来的主分片的副本选出来。新分片和副本的放置策略是可配置的。

3.与ElasticSearch通信

3.1索引数据

​ 1.ElasticSearch提供多种索引数据的方式,最简单的就是使用索引API,允许用户发送一个文档到特定索引

​ 2.通过bulk API或者UDP bulk API一次发送多个文档到集群

​ 其中1使用HTTP协议,2使用UDP协议。后者速度快,但是不可靠

​ 建索引操作只发生在主分片上,而不是副本。当一个索引请求被发送到一个节点的时候,如果该节点没有主分片或者只有副本,那么这个请求会被转发到拥有正确的主分片的节点。然后,该节点把索引请求群发给所有副本,最后,所有副本更新完结束索引过程。

3.2查询数据

​ 查询不是一个简单的,单步骤的操作。一般分为两个阶段,分散阶段和合并阶段。分散阶段将查询分发到包含相关文档的多个分片中执行查询,在合并阶段则从众多分片中收集返回结果。然后进行操作。

elasticsearch初次查询超时_ElasticSearch的工作流程相关推荐

  1. Elasticsearch基础1——搜索引擎发展史和工作流程、es/es-head/kibana的基础安装

    文章目录 一.搜索引擎 1.1 搜索引擎的发展背景 1.2 Lucene和Elasticsearch 1.3 Solr和Elasticsearch对比 1.4 数据搜索方式 1.5 搜索引擎 1.5. ...

  2. Elasticsearch之分词器的工作流程

    前提 什么是倒排索引? Elasticsearch之分词器的作用 Elasticsearch的分词器的一般工作流程: 1.切分关键词 2.去除停用词 3.对于英文单词,把所有字母转为小写(搜索时不区分 ...

  3. Mybatis工作流程,附带mybatis的mapper文件和config配置文件模板。mapper文件和dao接口的关系——xml中的namespace和sql标签id命名要求。

    1. Mybatis工作流程 1.1 使用MySQL创建数据库girls并生成一个表boys,如下图. 1.2 创建该表对应的简单实体类Boys,如下图. 1.3 创建Dao接口以及和接口同名的map ...

  4. ElasticSearch基础概念及工作流程

    注: 部分概念介绍来源于网络 一.Elasticsearch的基本概念 Elasticsearch(ES)是一个基于Lucene构建的开源.分布式.RESTful接口的全文搜索引擎.Elasticse ...

  5. Redis——Redis主从复制(工作流程详解)

    Redis主从复制 主从复制简介 主从复制的概念 主从复制的作用 主从复制工作流程 阶段一:建立连接阶段 主从连接(slave连接master) 第一种方式 第二种方式 第三种方式 授权访问 阶段二: ...

  6. 7.hdfs工作流程及机制

    1. hdfs基本工作流程 1. hdfs初始化目录结构 hdfs namenode -format 只是初始化了namenode的工作目录 而datanode的工作目录是在datanode启动后自己 ...

  7. RDIFramework.NET ━ .NET快速信息化系统开发框架 ━ 工作流程组件介绍

    RDIFramework.NET ━ .NET快速信息化系统开发框架 工作流程组件介绍 RDIFramework.net,基于.NET的快速信息化系统开发.整合框架,给用户和开发者最佳的.Net框架部 ...

  8. 通达OA工作流程-使用方法

    第3章    工作流使用 3.1    新建工作 进入工作流新建工作,选择需要的流程即可新建.如果用户没有流程第一步的经办权限,那么用户在新建界面看不到这个流程:相应的,如果用户没有流程分类所有流程 ...

  9. RDIFramework.NET敏捷开发框架 ━ 工作流程组件介绍

    RDIFramework.NET,基于全新.NET Framework与.NET Core的快速信息化系统敏捷开发.整合框架,给用户和开发者最佳的.Net框架部署方案.为企业快速构建垮平台.企业级的应 ...

最新文章

  1. [code]字母重排
  2. Tomcat7.0源码分析——Session管理分析(下)
  3. 一行代码搞定 R 语言模型输出!(使用 stargazer 包)
  4. [工具]各种截图工具和录屏软件
  5. 混淆矩阵怎么看_道理我都懂,但是神经网络反向传播时的梯度到底怎么求?
  6. cmake 离线安装mysql_(cmake)编译安装mysql
  7. oracle中minus
  8. 含有swap的c语言冒泡排序6,c#中写个Swap方法来实现冒泡排序 看看哪里错了
  9. 厉害!你的 CT 片子,AI 就能分析
  10. php 8.0 jit,PHP 8.0 正式版发布,性能提升 10%
  11. 详解linux运维工程师入门级必备技能
  12. python 数组中取出最小值_Python 数组中的冒号使用
  13. 在Linux上如何查看Python3自带的帮助文档?
  14. weblogic domain的安装与配置
  15. Linux之 find之 ctime,atime,mtime
  16. navicat for mysql Mac版 中文免安装
  17. 支付宝退款,支付宝提现转账
  18. Java小程序--抓取emai
  19. 数据科学和机器学习中的优化理论与算法(下)
  20. SSM疫情防控志愿者管理系统 志愿者服务信息系统 大学志愿者管理系统Java

热门文章

  1. 阿里云上Kubernetes集群联邦 1
  2. 用aliplayer如何实现视频的连续播放?
  3. 三分钟教你用 Scarlet 写一个 WebSocket App
  4. 低碳数据中心,因何而来?一文读懂如何利用超融合降碳
  5. 云+X案例展 | 传播类:南方报业数据中台建设,助力“智媒”飞跃发展
  6. axure中出现小手_你所不知道的15个Axure使用技巧
  7. linux推出超级用户_linux添加root权限用户
  8. tcp ip协议_网络通信-TCP/IP协议族简述
  9. python中bar的用法_python使用matplotlib绘图 -- barChart
  10. oracle sql语句大全