![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
elastic search
文章平均质量分 81
yingchenwy
This is real. This is me.
展开
-
ES 异常写入解决流程
ES 异常写入解决流程原创 2023-02-18 18:11:09 · 2829 阅读 · 0 评论 -
ES 聚合后去重 精度丢失问题方案
ES大数据量,聚合,去重精度问题解决原创 2022-06-13 12:00:55 · 3652 阅读 · 3 评论 -
ElasticSearch5.5.3版本高亮出现重复term的bug
mapping中title字段配置如下所示问题现象如下图所示:排查结果:7.4.2版本es已经解决该问题:所以,如果可以就直接升级ES得了。。。别问原因,问就是BUG…再问就是不知道。。。原创 2020-11-12 17:38:40 · 226 阅读 · 0 评论 -
ElasticSearch-7.4.2集群安装指南-包含ik/pinyin/jieba插件
ElasticSearch-7.4.2集群安装指南备注:1- 安装ElasticSearch不建议使用root账号,下文均按照账号为duser来介绍;2- 该版本配置了账号密码;1、下载编译好的ES安装包—稍后更新链接本安装包,包括已经编译好的:ik / pinyin / jieba插件;别的不同版本的结巴插件,可以访问该链接上述链接下载的jieba安装包需要编译,编译过程参考:Elasticsearch 中文分词 - 结巴分词centos7系统下elasticsearch7.5.1集原创 2020-11-10 20:42:26 · 580 阅读 · 0 评论 -
记一次es 集群red的排查解决过程
问题现象:es 集群状态red,查看基本信息如下:解决过程:1- 查看未分配分片信息GET localhost:9200/_cat/shards?h=index,shard,prirep,state,unassigned.reason2- 首先设置所有索引副本个数全为0curl -XPUT "http://localhost:9200/_settings" -d' { "number_of_replicas" : 0 } '{"acknowledged":true}3- .原创 2020-10-28 20:57:04 · 1464 阅读 · 0 评论 -
ElasticSearch集群宕机,重启后某个索引状态为red
问题现象:es集群宕机重启后,某个索引不能正常使用;问题原因:因服务器磁盘爆了,导致es集群宕机;解决方案:1- 查看所有分片状态curl -X GET "http://ip:port/_cat/shards"应该可以看出不能使用的那个索引,主备分片全部处于unsigend状态。2-直接在kibana执行下面指令,对集群中分配失败的索引进行重新分配POST /_cluster/reroute?retry_failed=true3-执行后,过一会执行下这一句看下结.原创 2020-07-27 10:55:28 · 1335 阅读 · 0 评论 -
ES内存那点事
注: 本文主要针对ES 2.x。“该给ES分配多少内存?”“JVM参数如何优化?““为何我的Heap占用这么高?”“为何经常有某个field的数据量超出内存限制的异常?““为何感觉上没多少数据,也会经常Out Of Memory?”以上问题,显然没有一个统一的数学公式能够给出答案。 和数据库类似,ES对于内存的消耗,和很多因素相关,诸如数据总量、mapping设置、查询方式、查询频度等等。默认的设置虽开箱即用,但不能适用每一种使用场景。作为ES的开发、运维人员,如果不了解ES对内存使用的一些..转载 2020-07-20 19:55:15 · 298 阅读 · 1 评论 -
Elasticsearch如何保证数据不丢失?
在elasticsearch和磁盘之间还有一层cache也就是filesystem cache,大部分新增或者修改,删除的数据都在这层cache中,如果没有flush操作,那么就不能100%保证系统的数据不会丢失,比如突然断电或者机器宕机了,但实际情况是es中默认是30分钟才flush一次磁盘,这么长的时间内,如果发生不可控的故障,那么是不是必定会丢失数据呢?很显然es的设计者早就考虑了这个问...转载 2020-04-16 22:34:29 · 1615 阅读 · 0 评论 -
ES 性能调优过程
背景:在数据和服务都准备完成的情况下,打开页面,发现请求需要要几秒才返回;思路:1.查看搜索接口请求本身耗时情况,排除网络抖动因素,发现搜索接口请求到ES返回结果本身耗时较高;2.检查每次请求到ES的入参,并在原有参数中加入"profile":true,查看ES处理搜索请求的耗时分布情况;入参:返回:发现只是一个简单的termQuery耗时818ms,然后查看是否ES集群负载情...转载 2020-04-14 22:16:08 · 934 阅读 · 0 评论 -
ElasticStack系列之九 & master、data 和 client 节点
在生产环境下,如果不修改elasticsearch节点的角色信息,在高数据量,高并发的场景下集群容易出现脑裂等问题。 默认情况下,elasticsearch 集群中每个节点都有成为主节点的资格,也都存储数据,还可以提供查询服务。这些功能是由两个属性控制的。 1. node.master 2. node.data 默认情况下这两个属性的值都是true。 node.m...转载 2020-04-08 14:23:59 · 231 阅读 · 0 评论 -
Elasticsearch系列---Elasticsearch的基本概念及工作原理
基本概念Elasticsearch有几个核心的概念,花几分钟时间了解一下,有助于后面章节的学习。NRTNear Realtime,近实时,有两个层面的含义,一是从写入一条数据到这条数据可以被搜索,有一段非常小的延迟(大约1秒左右),二是基于Elasticsearch的搜索和分析操作,耗时可以达到秒级。Cluster集群,对外提供索引和搜索的服务,包含一个或多个节点,每个节点属于...转载 2020-04-08 14:18:59 · 438 阅读 · 0 评论 -
ElasticSearch底层原理浅析
基本概念索引(Index)ES将数据存储于一个或多个索引中,索引是具有类似特性的文档的集合。类比传统的关系型数据库领域来说,索引相当于SQL中的一个数据库,或者一个数据存储方案(schema)。索引由其名称(必须为全小写字符)进行标识,并通过引用此名称完成文档的创建、搜索、更新及删除操作。一个ES集群中可以按需创建任意数目的索引。类型(Type)类型是索引内部的逻辑分区(categ...转载 2020-02-12 17:36:11 · 247 阅读 · 0 评论 -
elasticsearch 大字段高亮速度慢优化
对大字段在设计mapping时,添加term_vector参数,如下:"description": { "similarity": "customize_bm25", "type": "text", "store": true, "analyzer": "my_jieba_index_analyzer", ...原创 2020-01-14 19:22:08 · 939 阅读 · 0 评论 -
elasticsearch update_by_query ConflictError
最近在做项目时,遇到个需求,需要定期根据热搜词频,更新索引中推荐字段的权重,然后就写了个脚本执行。逻辑也很简单,现获取热搜词,然后使用 update_by_query 对索引中相关item进行更新。一开始单步调试代码测试,都运行正常,但是一旦脚本自动开始执行,就报如下错误:elasticsearch.exceptions.ConflictError: ConflictError(409, ...原创 2019-12-13 14:50:39 · 3152 阅读 · 1 评论 -
ElasticSearch之CURL操作
CURL的操作 curl是利用URL语法在命令行方式下工作的开源文件传输工具,使用curl可以简单实现常见的get/post请求。简单的认为是可以在命令行下面访问url的一个工具。在centos的默认库里面是有curl工具的,如果没有请yum安装即可。 curl -X 指定http的请求方法 有HEAD GET POST PUT DELETE -d 指定要传输...转载 2019-12-05 15:42:26 · 558 阅读 · 0 评论 -
elasticsearch FORBIDDEN/12/index read-only / allow delete (api)]
往es推数据,发现如下错误:BulkIndexError: ('1 document(s) failed to index.', [{u'index': {u'status': 403, u'_type': u'***', u'_index': u'***', u'error': {u'reason': u'blocked by: [FORBIDDEN/12/index read-only ...原创 2019-11-07 16:20:08 · 1252 阅读 · 0 评论 -
文本高亮显示 python
项目里面有个需求:给搜索框下面的自动补全列表匹配内容高亮显示es高亮补全功能是使用的elastic search提供的completion suggester,但是该接口没有对结果匹配部分进行高亮显示的功能,所以在不改变前述实现的情况下,写一个通用函数,对结果列表中字符串进行高亮设置。def highlight_text(highlight_string, list_res): ...原创 2018-09-10 17:41:32 · 4844 阅读 · 0 评论 -
因ElasticSearch版本升级,导致的406错误解决方法
最近项目索引牵引到新的服务器,该服务器下载的ElasticSearch版本为6.6,比之前使用的版本号新一些。导致同样的查询query,在以前好用,但是现在却出现如下错误:error: {"error":"Content-Type header [] is not supported","status":406}由错误提示可知,应该是查询的query缺少header参数所致。原来使...原创 2019-02-20 15:22:58 · 6176 阅读 · 0 评论 -
elasticsearch之正则查询 regexp query 使用
最近想使用es的正则查询query,于是看了看官网对正则查询语句的介绍:https://www.elastic.co/guide/en/elasticsearch/reference/2.3/query-dsl-regexp-query.html#regexp-syntax上面介绍了es接受的正则表达式规则,同时给出了一个简单的regexp query 样例。嗯。。。看着还简单,如果熟悉p...原创 2019-05-23 18:17:56 · 22823 阅读 · 2 评论 -
ElasticSearch - 聚合 aggs
转载自:https://blog.csdn.net/weixin_40341116/article/details/81173016聚合概念ElasticSearch除了致力于搜索之外,也提供了聚合实时分析数据的功能如果把搜索比喻为大海捞针(从海量的文档中找出符合条件的那一个),那麽聚合就是去分析大海中的针们的特性,像是在大海里有多少针?针的平均长度是多少?按照针的製造商来划...转载 2019-05-23 19:38:30 · 770 阅读 · 0 评论 -
docker镜像访问本地elasticsearch端口
使用docker stack部署的镜像服务,进入镜像之后,理论上,应该可以通过下面的指令访问本地的elasticsearch服务curl 本机ip/9200但是却提示拒绝访问。后来本机使用上述指令查看之后发现,本机也是拒绝访问。之后发现,9200端口的elasticsearch服务,是通过打洞的方式连接的远程服务器上的elasticsearch服务,只能通过下面指令访问端口...原创 2019-06-27 20:12:17 · 1661 阅读 · 0 评论 -
elastic search 索引备份
项目上线之后,由于迭代更新,需要重建索引,但是为了保证重建索引之后出现异常时可以及时滚回上一版本索引,所以需要给目前版本索引进行备份。from elasticsearch import Elasticsearchfrom elasticsearch import helpersfrom settings import configimport jsonimport timedef...原创 2018-09-11 16:13:11 · 411 阅读 · 0 评论