东莞网站排名优化seo,呼和浩特 的网站建设,淘宝客怎么做自己网站推广,百度热搜关键词排名优化常见的面试问题
描述使用场景 es集群架构3个节点#xff0c;根据不同的服务创建不同的索引#xff0c;根据日期和环境#xff0c;平均每天递增60*2#xff0c;大约60Gb的数据。 调优技巧 原文参考#xff1a;干货 | BAT等一线大厂 Elasticsearch面试题解读 - 掘金 设计阶…常见的面试问题
描述使用场景 es集群架构3个节点根据不同的服务创建不同的索引根据日期和环境平均每天递增60*2大约60Gb的数据。 调优技巧 原文参考干货 | BAT等一线大厂 Elasticsearch面试题解读 - 掘金 设计阶段的调优
根据业务增长的需求采取日期模版创建索引通过roll over API实现滚动索引 定义条件生成新的索引但都指向一个别名 https://juejin.cn/post/6959744054905012231 根据别名对索引进行管理 凌晨对索引进行force_merge操作释放空间 合并Lucene索引在每个分片中保存的分段数强制合并减少分片中的分段数量 https://blog.csdn.net/weixin_43820556/article/details/122986027
冷热分离机制热数据放在SSD冷数据定期shrink操作缩减存储 删除副本只读索引减少主分片的数量 https://blog.csdn.net/UbuntuTouch/article/details/109004225
使用curator进行索引的生命周期管理 对索引和快照进行管理配置规则定时任务调用 https://cloud.tencent.com/developer/article/1382110 仅针对需要分词的字段选用合适的分词器 Mapping阶段充分结合各个字段的属性是否要检索、存储
写入调优
写入前refresh_interval-1 默认情况下索引的refresh_interval为1秒,这意味着数据写1秒后就可以被搜索到,每次索引的 refresh 会产生一个新的 lucene 段,这会导致频繁的 segment merge 行为,如果你不需要这么高的搜索实时性,应该降低索引refresh 周期 采用bulk批量写入 使用自动生成的id 写入 doc 时如果是外部指定了 id,es 会先尝试读取原来doc的版本号, 判断是否需要更新,使用自动生成 doc id 可以避免这个环节 查询调优
禁用批量terms分页数据量大时先基于时间范围检索充分利用倒排索引机制keyword查询合理的路由机制
索引数据多的调优和部署
动态索引
基于模板时间rollover api 滚动创建索引
存储层面
冷热数据分离存储冷数据force_mergeshrink压缩
部署层面
合理的前期规划动态增加节点缓解集群压力
master选举机制
基本前提
候选主节点才能成为主节点最小主节点数防止脑裂
选举流程 索引文档流程 文档获取分片 文档id计算目标分片id shard hash(_routing) % (num_of_primary_shards)