ElasticSearch
文章平均质量分 81
有关ElasticSearch的文章
胖墩的IT
一步一个脚印走下去,相信自己能成功,
学习的3W原则:who,what,which
生活的3W原则:who,what,why
展开
-
Elasticsearch 查询命令执行时,如何通过词项索引、词项字典、倒排表定位文档逻辑介绍
这里不涉及到源码,只是根据网上的一些文章总结一下,目前不需要细究,只需要知道大概就好,除非你的工作是二次开发ES。原创 2023-12-27 01:04:52 · 1474 阅读 · 0 评论 -
Elasticsearch 8.9 search命令执行查询源码
一、相关的API的handler1、接收HTTP请求的handler2、往数据节点发送查询请求的action(TransportSearchAction)3、通过transportService把查询请求发送到指定的数据节点二、数据节点收到请求的处理逻辑1、尝试从缓存中加载查询结果2、不通过缓存查询,直接执行查询(1)executeQuery和executeRank两种查询方式(2)、根据搜索上下文,在查询之前添加各种查询搜集器(3) 执行查询操作(遍历此索引在此数据节点所有的分片)这里只是HTTP发原创 2023-12-16 21:06:28 · 488 阅读 · 0 评论 -
Elasticsearch 8.9 refresh刷Es缓冲区的数据到Lucene,更新segemnt,使数据可见
下面是lucene源码中关于这两个API的实现,//这个是会尝试获取刷新锁,如果没有则不执行刷新操作try {//这里会等待获取刷新锁,所以会阻塞try {但是实际上最后执行刷新还是执行的方法。原创 2023-12-10 00:22:54 · 495 阅读 · 0 评论 -
Elasticsearch 8.9 flush刷新缓存中的数据到磁盘源码
ES 把内存中segment和translog刷进磁盘原创 2023-12-07 00:58:44 · 731 阅读 · 0 评论 -
Elasticsearch 8.9 Bulk批量给索引增加数据源码
下面的图来自,这篇文章主要讲的是客户端发送bulk命令到保存到Lucene和translog的过程源码,不涉及到把数据刷到磁盘的逻辑,也不讲解存储在Lucene的数据结构。原创 2023-11-16 23:53:06 · 692 阅读 · 0 评论 -
Elasticsearch 8.9 服务端接收创建索引和查询索引信息源码
至于下面创建索引和查询索引信息的入口如何找到的,可以。原创 2023-11-07 00:58:21 · 502 阅读 · 0 评论 -
Elasticsearch 8.9 Master节点处理请求源码
大家看可以看这个图非常好,下午的讲解代码在各个类和方法之间流转,都体现这个图上。原创 2023-10-22 03:03:25 · 552 阅读 · 0 评论 -
Elasticsearch 8.9启动时构建接收Rest请求的hander过程源码
/省略代码。。。这里只选几个经常用到的//省略代码/*** 用于获取索引和头索引 API 的 REST 处理程序。*///代表路由匹配规则,通过这个规则知道要调用这个实例,每一个实例路由规则都是不一样的@Override@Override.indices()原创 2023-10-21 02:08:18 · 850 阅读 · 0 评论 -
某一字段满足搜索条件的文档的数据更新和注意点
场景:索引加了新字段,以前的的文档没有此字段,所以需要把旧文档的数据补充1、ES6.3POST 索引/_update_by_query?conflicts=proceed{ "script": { "source": "ctx._source['查询的字段']='符合查询的字段的值';" }, "query": { "term": { "需要修改的字段": "修改值" } }}上面conflicts=proceed代表如果你想计算有多少个版.原创 2021-07-11 01:43:56 · 396 阅读 · 0 评论 -
[NoNodeAvailableException[None of the configured nodes are available:
如果你连接ES集群(我的是6.3版本),报下面的错误,[NoNodeAvailableException[None of the configured nodes are available:出现这个问题的原因是你集群名称配置配错误了,并且你是采用TCP的连接方式,因为http的方式可以不用集群名称的注意点:如果你公司有专门管理ES集群控制体台,有可能上面的是集群名称不是实际的集群名称,我就遇到过,之后反复确认,又找人帮忙看了一下ES集群的配置文件,的确是错误的...原创 2021-07-11 01:04:51 · 420 阅读 · 0 评论 -
Spring boot整合ElasticSearch6.3.2(查询SQL语句关键字与ElasticSearch6.3.2 API对应)
文章目录前言一、spring boot配置文件1、pom文件2、Application.yml中的配置二、查询语句和SQL做对比1、字段函数统计,就是count(字段)2、where语句(1)等于(2)大于等于(3)小于等于(4)大于(5)小于(6)时间范围(7)不等于(8)模糊匹配(9)and(10)or(11)and和or混用(12)in3、group语句4、having语句5、降升排序,多字段排序(1)不分组排序(2)分组后再求和,每个组按求和值排序前言ElasticSearch的版本是6.3.原创 2020-11-21 18:58:31 · 2348 阅读 · 0 评论 -
es6.8增删改查基本操作
目录前言1、 创建1、创建一个新的索引2、 添加1、 指定id插入数据2、不指定id插入数据3、 如果此id存在则不插入,4、 设置添加文档的超时时间3修改1、更新文档中的某个字段2 、添加索引中的字段映射3、 修改索引中的字段映射4、 通过查询修改文档5、 删除1、 删除文档2、 删除索引3、 按查询结果删除索引、类型、文档6、查询1、 查询某索引/类型下所有的文档2、根据id查询某个文档3、查询是否存在此索引4、获取文档的指定字段的内容5 只获_source的内容6、用一个查询对多个文档进行不同的原创 2020-11-21 17:14:00 · 1941 阅读 · 0 评论 -
ES2中关于索引模板的操作
文章目录前言一、 创建一个新的索引模板二、 查看索引模板1、 查看所有模板2、 查看指定的模板3、 模糊匹配4、 批量查询三、 删除指定模板四、修改模板(相当于整体替换,重置)五、根据索引模板创建索引前言首先这里是关于ES2中对于索引模板的操作记录,对于es6及以上对于索引模板的操作和结构可以看下面的的链接elastic中es6教程关于索引模板的部分es6以前和es6以后索引模板结构的区别一、 创建一个新的索引模板put _template/模板名称{ "template": "索原创 2020-10-27 00:27:52 · 460 阅读 · 0 评论 -
ES2对数据的基本操作
目录前言一、 创建1、创建一个新的索引二、 添加1、 指定id插入数据2、不指定id插入数据三、修改1、更新文档中的某个字段2、重置整个文档四、 删除1、 删除文档2、 删除类型3、 删除索引五、 查询1、查询某索引/类型下所有的文档2、 根据id查询某个文档3、 根据特定字段查询前言首先这里是关于ES2的,对ES6及以上的需要看另一篇文章,这个不适合建议大家还是去Elastic的ES2教程看看细节,这里只是初步的记录一下下面所有的语句都是直接用插件实现的,如果你用http(我是用postman)原创 2020-10-26 23:59:54 · 1323 阅读 · 0 评论 -
windows下ElasticSearch下载和ElasticHD可视化操作工具
介绍es和es在系统中的定位可以看ES基本介绍安装很简单,可以看es安装在windows的步骤可视化工具ElasticHD在windows的安装步骤原创 2020-09-17 00:23:48 · 1120 阅读 · 0 评论