ES在运维工作中的应用

ES的应用场景主要涉及日志检索,数据库加速,监控指标,数据分析等领域。不同的业务场景具有不同的特点,对性能的需求也不尽相同,所以需要针对不同场景有不同的优化方案。

1. 日志检索场景, 并发写入量大,实时性要求不高,存储量大,数据有冷热属性。针对这种场景可以提高索引写入缓存大小来提升写入性能;增加refresh interval时间间隔来减少segment数量;

2. 数据库加速场景, 对于没有事务性要求,且需要检索海量数据的结构化查询场景,ES是替代关系型数据库的不错选择。适用于延迟敏感,需要高性能,高可用的场景。

3. 监控指标, 并发写入量大,时序特性,不需要高可用,数据有冷热属性。监控指标的收集,数据从各个渠道收集起来。Elastic提供了多种收集工具,包括Metricbeat、Filebeat、Auditbeat、Logstash来收集应用软件、云环境、安全、网络等系统的日志数据。

4. 数据分析场景, 数据分析维度较多,聚合查询。写入量大,查询量小,但需要聚合查询(使用聚合函数查询)。

什么是冷热属性

传统的Elasticsearch集群中所有节点均采用相同的配置,然而Elasticsearch并没有对节点的规格一致性做要求,换而言之就是每个节点可以是任意规格,当然这样做会导致集群各节点性能不一致,影响集群稳定性。但是如果有规则的将集群的节点分成不同类型,部分是高性能的节点用于存储热点数据,部分是性能相对差些的大容量节点用于存储冷数据,却可以一方面保证热数据的性能,另一方面保证冷数据的存储,降低存储成本,这也是Elasticsearch冷热分离架构的基本思想,如下图为一个3热节点,2冷节点的冷热分离Elasticsearch集群:

Categories:

Tags: