使用经验
文章平均质量分 63
es使用中的问题及探索
夜月行者
我们一定要活的没有遗憾,有朝一日一定要出海,随心所欲的活着,比谁都要自由!
展开
-
ES的一些操作记录
Elasticsearch 不登录节点,查看节点的内存信息。原创 2023-06-01 17:40:08 · 200 阅读 · 0 评论 -
Elasticsearch优化
感觉针对ES的优化可以有这么几块儿上面的1,2,3,4之间可能之间会有交叉,比如索引设置delay_allocation是属于索引设计的优化,同时也是集群稳定性的优化,也算是针对集群的优化。可以先按照自己的思路准备一下。...原创 2022-07-27 15:49:44 · 665 阅读 · 0 评论 -
ELK日志系统的写入优化
日志系统的写入优化1. 日志集群优化的基本原则对于日志收集系统来说,就是使用尽可能少的资源来存储尽可能多的日志,所以需要结合日志集群的特点进行优化。这些优化一般可以分为两个方面,一个方面是提升服务器配置,给更多的资源,比如加机器,上ssd等这种,这种优化会提升集群的写入效率,但是不会有其他的损失,甚至其他方面也会有提升;还有一方面的优化则是带有trade-off的,也就是牺牲一些其他方面的性能来提升写入的效率(比如降低search的资源)。2. 服务器配置优化服务器的配置优化和搭建用于online搜原创 2021-11-29 14:41:05 · 1773 阅读 · 0 评论 -
lostash Timeout executing grok 问题排查
Timeout executing grok 问题排查使用logstash的时候发现会有这个报错,导致logstash不稳定,input端是kafka,就会导致kafka的反复rebalance,一开始排查思路有问题,而且网上的资料可能都是其中的一个原因,所以导致我的排查思路偏了。1. 问题背景我有一组logstash 从kafka中消费日志数据,解析后丢到ES当中,提供一些日志的检索能力。大概的配置是这样的。1. 基础配置logstash版本 7.5.0jvmjava -ver原创 2021-11-29 12:34:54 · 2445 阅读 · 0 评论 -
ES系统配置优化
es的配置需要注意的地方分为系统配置和es本身相关的一些配置ES系统配置优化1.增大进程可以打开的文件数,vim /etc/security/limits.conf* soft nofile 100000* hard nofile 131072生效方式:shell重新连接就生效,应该是新的会话就生效2.增大进程可以创建的线程数2.1 vim /etc/security/limits.conf* soft nproc 10240* hard nproc 20480生效方式:shell原创 2021-11-17 11:35:33 · 1674 阅读 · 0 评论 -
使用G1后报错-CircuitBreakingException: [parent] Data too large
使用G1后报错Caused by: org.elasticsearch.common.breaker.CircuitBreakingException: [parent] Data too large, data for [<transport_request>]ES: 7.5.0今天在优化ES的GC配置的时候又踩了坑,因为之前在7.1上使用过G1,感觉效果还不错,这次的7.5上也就直接升级成了G1,jvm.options的配置是-Xms24g-Xmx24g## GC conf原创 2021-11-06 20:10:14 · 3430 阅读 · 0 评论 -
ES集群添加IK分词器
ES集群添加IK分词器ES : 7.5.0官方文档其实已经够优秀了,毕竟是中文的,这里只给出一些建议。IKAnalyzer.cfg.xml 建议放到插件的目录下,要不然有可能会有一些问题{plugins}/elasticsearch-analysis-ik-*/config/IKAnalyzer.cfg.xml提供的http接口要支持head请求 <!--用户可以在这里配置远程扩展字典 --> <entry key="remote_ext_dict">原创 2021-11-06 19:22:36 · 530 阅读 · 0 评论 -
ES集群新增节点无法加入集群 timed out while waiting for initial discovery state - timeout: 30s
ES : 7.5.0ES集群新增节点无法加入集群 timed out while waiting for initial discovery state - timeout: 30s ES集群需要增加专用的master节点,加入完master节点需要修改data节点的elasticsearch.yml为专用的data节点并重启。这里出现了一个问题,在data节点重启后无法加入cluster当中,自己形成了一个集群。部分elasticsearch.yml配置如下node.master: fal.原创 2021-11-06 19:02:45 · 3865 阅读 · 0 评论 -
Elasticsearch 集群中增加专用master节点
Elasticsearch 集群中增加专用master节点文章目录Elasticsearch 集群中增加专用master节点1.增加master节点2.排除原来的节点的选举权3.data节点重启操作4.删除exclusionsES版本 7.5.0 当前ES集群中有7个data+master节点,配置都比较高,集群的压力相对也比较大,所以计划加入3个专用的master节点,防止集群万一压力比较大的时候崩溃导致整个ES服务不可用。操作过程增加master节点排除原来的节点的选举权data节原创 2021-11-05 17:20:10 · 2126 阅读 · 0 评论 -
无题
整个搜索的架构设计先是从大的方面进行讲述,然后可以从各个模块深入细节数据存储层db :mysql mongo hdfses:redis: 用户画像数据从db转移部分到es,es不用做持久层,只是做搜索使用在数据接入的过程中mysql,mongo通过mongo-shake,canal接入,代码解析数据丢到kafka当中,相当于一个数据中转pre-clean — 对搜索来书是脏数据的清理flink-counter — 统计型数据indexer项目的接入面临的问题:数据库的表比较多,索原创 2021-03-30 14:21:21 · 140 阅读 · 0 评论 -
query处理
# post data{ "trace_id": "1234567890", "query": "q"} # result{ "trace_id": "1234567890", "query": "q", "query_processed": "[qp1, qp2, qp3]", "result_name": "result_author 表示results里结果关键字", "results": { "result_single_char": "True/.原创 2021-03-26 11:39:32 · 116 阅读 · 0 评论 -
elasticsearch使用优化备忘
做过哪些优化官方优化建议1.jvm使用合适的jvm2.增大可以打开的文件数3.增大可以开启的线程数4.增大mmap使用的限制vma5.减少swap,可以开启memory lock,或者禁用swap6.master expecial业务中使用alias来进行全量index的无缝替换new index的时候只有一个replica,完成后在加一个replicaset slow_logadd coordinator node 并使用g1update refresh_intervalno原创 2021-03-22 20:15:56 · 170 阅读 · 0 评论 -
自定义ik分词加载无效的问题分析
文章目录问题背景1.需求2. 使用tomcat提供一个接口3. 使用nginx代理文件3.1 nginx 配置3.2 ES配置3.3 增加词汇不生效3.4 修改nginx配置进行验证4.spring boot tomcat的设置问题背景1.需求最近有一些需求导致我们需要扩充IK的词库,按照IK的官方走了一遍,这里是官方的一些介绍IK热更新配置方式我们的ES版本为7.1.12. 使用tomcat提供一个接口按照文档在tomcat服务中提供一个接口,来将自定义的热词数据写出去,结果在es中不能成功原创 2021-03-01 17:04:44 · 3434 阅读 · 0 评论 -
搜索的一般过程
之前学习过很多刘老师的lucene源码分析的课程,结果现在整的都忘了,这次重新梳理一下争取形成自己的东西。后面就不容易忘掉了。 刘老师的课程是基于lucene2.x的源码分析的,后面lucene迭代了很多版本,也引入了新的数据结构进行优化,但是主体的模块基本上是没有变的。计划是先把之前的lunce的数据结构整理一下,因为可以查阅刘老师的课程,可以有很好的参考作用。在这个基础上再整理和对比新的lucene的优化点,基于lucene7.x在这里主要关注lucene的存储结构,因为了解了存储结构基本上就原创 2021-02-26 15:18:17 · 2092 阅读 · 1 评论 -
字符串匹配算法
这里聊一聊在搜索中常用的字符串搜索使用的一些数据结构搜索中的字符串需求的场景有哪些呢提示词需求,用户输入一个字符串的一部分,给用户提示更加完整的字符串字符串完整匹配,一般用在分词后的词典的匹配,用于召回用户搜索相关的内容敏感词过滤,运营方会提供一个敏感词列表,如果用户的query中包含敏感词则不再进行召回,也有可能是要将召回的内容进行过滤,去除那些包含敏感词的内容前两个场景更加相似,是在多个单词中查找某一个单词。当然提示词实际上是在多个有位置关系的单词中查找,这个在后面学习lucene的数据结原创 2021-02-26 15:10:21 · 278 阅读 · 0 评论 -
elasticsearch index doc过程概述
文章目录概述1.es中的基础概念2.es中的索引过程2.1 一次index请求的大体流程2.2 为什么是near real time2.3 为什么要有translog2.3.1 translog的作用2.3.2 translog的持久化机制2.3.2 commit产生的时机概述 这里主要讲讲es index的过程,努力揭示es在index过程中具体做了哪些工作。从而增加我们对es的了解,以便于更好的使用和优化es。1.es中的基础概念es的基础支撑是使用lucene,每个es的索引(index原创 2021-02-26 14:31:58 · 846 阅读 · 0 评论 -
大量更新后数据膨胀_段合并的原理探寻
文章目录1. 问题2. 问题探寻1. lucene的段合并机制1. allowedSegCountInt 的计算方式1. 问题 在上周的时候,有一个索引post,数据方突然做了一个近全表的update,导致了大量的数据更新。数据积累的情况下跑的有将近1个小时,但是奇怪的是在数据更新完以后索引膨胀了80%。从11g变成了20g.当时怀疑是段合并的问题,但是看具体的segment数量却基本上没有变化。很是奇怪。经历了半天的时间,依然没有降下来。后来打算在这周一如果数据量依然是很高的话就直接重建全量索引。原创 2021-02-26 10:36:23 · 392 阅读 · 0 评论