ES - 概述

 

 

前言

Q1:ElasticSearch 是什么? 为什么要学习?

ElasticSearch 是一个分布式、可扩展、实时的搜索和分析引擎,基于 Lucene 构建。它可以用于全文搜索、结构化搜索、分析以及日志和事件数据的存储。

在传统的数据库中模糊查询使用like %Harley%; 但是海量数据中查询,十分慢,需要用到索引才能提高查询效率。

ElasticSearch 全文检索,将关键字拆分为一个一个字符查询,快速定位到包含该关键字或者类似的文档。

Q2:ElasticSearch 有什么特点?

ElasticSearch 的主要特点包括:分布式、可扩展、实时、可靠、易用和高效。它提供了 RESTful API 和灵活的查询语言,可以轻松地与各种应用程序集成。

Q3:ElasticSearch 是如何工作的?

ElasticSearch 在内部使用了倒排索引结构,它将文档中的每个单词映射到一个唯一的 ID。当进行查询时,它会使用这个索引来快速定位到包含特定单词的文档。它还支持复杂的查询和聚合操作,以便进一步分析和处理数据。

Q4:在 ElasticSearch 中如何实现数据分片?

数据分片是 ElasticSearch 中的一种机制,用于将一个索引分成多个小的分片,以提高查询性能和可扩展性。分片的数量可以在创建索引时指定,并且可以在运行时动态调整。每个分片都是一个独立的 Lucene 索引,可以部署在多个节点上。

Q5:如何优化 ElasticSearch 集群的性能?

优化 ElasticSearch 集群的性能可以通过多种方式实现,包括:增加节点数量、调整分片数量、优化查询语句、使用合适的硬件配置和调整 JVM 参数等。此外,还可以通过监控集群状态和使用分析工具来识别和解决性能瓶颈。

 

posted @ 2024-01-19 18:59  HOUHUILIN  阅读(4)  评论(0编辑  收藏  举报