Elasticsearch 在部署时,对 Linux 的设置有哪些优化方法?

1、64 GB 内存 的 机 器 是 非 常 理 想 的 , 但是 32 GB 和 16 GB 机器 也 是 很 常 见 的 。少于 8 GB 会适 得 其 反 。

2、如 果 你 要 在 更 快 的 CPUs 和更 多 的 核 心 之 间 选 择 , 选 择 更 多 的 核 心 更 好 。 多个内 核 提 供 的 额 外 并 发 远 胜 过 稍 微 快 一 点 点 的 时 钟 频 率 。

3、 如果 你 负 担 得 起 SSD, 它将 远 远 超 出 任 何 旋 转 介 质 。 基于 SSD 的节 点 , 查询和 索 引 性 能 都 有 提 升 。 如 果 你 负 担 得 起 , SSD 是一 个 好 的 选 择 。

4、即使 数 据 中 心 们 近 在 咫 尺 ,也要 避 免 集 群 跨 越 多 个 数 据 中 心 。绝对 要 避 免 集 群跨越 大 的 地 理 距 离 。

5、请 确 保 运 行 你 应 用 程 序 的 JVM 和服 务 器 的 JVM 是完 全 一 样 的 。 在Elasticsearch 的几 个 地 方 , 使 用 Java 的本 地 序 列 化 。

6、通 过 设 置 gateway.recover_after_nodesgateway.expected_nodes、

gateway.recover_after_time 可以 在 集 群 重 启 的 时 候 避 免 过 多 的 分 片 交 换 , 这 可能会 让 数 据 恢 复 从 数 个 小 时 缩 短 为 几 秒 钟 。

7、 Elasticsearch 默认 被 配 置 为 使 用 单 播 发 现 , 以 防 止 节 点 无 意 中 加 入 集 群 。 只有在 同 一 台 机 器 上 运 行 的 节 点 才 会 自 动 组 成 集 群 。 最 好 使 用 单 播 代 替 组 播 。

8、不 要 随 意 修 改 垃 圾 回 收 器 ( CMS)和 各 个 线 程 池 的 大 小 。

9、把 你 的 内 存 的 ( 少 于 ) 一 半 给 Lucene(但 不 要 超 过 32 GB!) , 通 过ES_HEAP_SIZE 环境 变 量 设 置 。

10、内 存 交 换 到 磁 盘 对 服 务 器 性 能 来 说 是 致 命 的 。 如 果 内 存 交 换 到 磁 盘 上 , 一 个100 微秒 的 操 作 可 能 变 成 10 毫秒 。 再想 想 那 么 多 10 微秒 的 操 作 时 延 累 加 起来。 不难 看 出 swapping 对于 性 能 是 多 么 可 怕 。

11、 Lucene 使用 了大量的文件 。 同 时 , Elasticsearch 在节 点 和 HTTP 客 端之间 进 行 通 信 也 使 用 了 大 量 的 套 接 字 。 所有 这 一 切 都 需 要 足 够 的 文 件 描 述 符 。你应该 增 加 你 的 文 件 描 述 符 , 设 置 一 个 很 大 的 值 , 如 64,000。

补充 : 索 引 阶 段 性 能 提 升 方 法

1、使 用 批 量 请 求 并 调 整 其 大 小 : 每 次 批 量 数 据 5-- 15 MB 大是 个 不 错 的 起 始 点 。

2、存 储 : 使 用 SSD

3、段和 合 并 :Elasticsearch 默认 值 是 20 MB/s,对机 械 磁 盘 应 该 是 个 不 错 的 设置 。如果 你 用 的 是 SSD,可以 考 虑 提 高 到 100-- 200 MB/s。如果 你 在 做 批 量 导 入 ,完全 不 在 意 搜 索 , 你 可 以 彻 底 关 掉 合 并 限 流 。 另 外 还 可 以 增 加index.translog.flush_threshold_size 设置 , 从 默 认 的 512 MB 到更 大 一 些 的值, 比 如 1 GB,这 可 以 在 一 次 清 空 触 发 的 时 候 在 事 务 日 志 里 积 累 出 更 大 的 段 。

4、如 果 你 的 搜 索 结 果 不 需 要 近 实 时 的 准 确 度 , 考 虑 把 每 个 索 引 的index.refresh_interval 改到 30s。

5、如果 你 在 做 大 批 量 导 入 ,考虑 通 过 设 置 index.number_of_replicas: 0 关闭 副本。

相关推荐
onebound_noah1 小时前
电商图片搜索:技术破局与商业落地,重构“视觉到交易”全链路
大数据·前端·网络·人工智能·重构·php
n***63273 小时前
Python大数据可视化:基于大数据技术的共享单车数据分析与辅助管理系统_flask+hadoop+spider
大数据·python·信息可视化
Michelle80234 小时前
24大数据 while循环
大数据·python
Hello.Reader4 小时前
从 CDC 到实时数据流Flink SQLServer CDC Connector 实战
大数据·sqlserver·flink
Huathy-雨落江南,浮生若梦5 小时前
ElasticSearch9入门(二)分词器安装与复杂查询语法
elasticsearch
TG:@yunlaoda360 云老大6 小时前
谷歌云Flink 核心组成及生态发展:实时数据处理的下一代引擎
大数据·flink·googlecloud
JavaBoy_XJ6 小时前
电商系统中ES检索技术设计和运用
大数据·elasticsearch·搜索引擎
Bobby Wang11 小时前
Git详解
elasticsearch
nini_boom14 小时前
**论文初稿撰写工具2025推荐,高效写作与智能辅助全解析*
大数据·python·信息可视化
小园子的小菜15 小时前
Elasticsearch高阶用法实战:从数据建模到集群管控的极致优化
大数据·elasticsearch·搜索引擎