【ElasticSearch】概述

文章目录

ElasticSearch

简单整理ES基本概念,设计理念,构建与使用,供回顾。

1.基本介绍

Elasticsearch 是一个基于 Apache Lucene 的开源的分布式搜索引擎,用于实时存储、检索和分析大规模数据。它属于 Elastic Stack(以前称为 ELK Stack),包括 Elasticsearch、Logstash 和 Kibana,提供全文搜索、日志收集和数据可视化等功能。

2.设计理念

Elasticsearch 的设计理念基于实时搜索和分布式存储的需求,旨在提供一个强大、可扩展、高效的搜索引擎和分析平台。以下是 Elasticsearch 的设计理念的关键方面:

  1. 分布式架构: Elasticsearch 是一个分布式系统,设计成可以水平扩展,以便处理大量数据和高并发请求。数据被分散存储在多个节点上,每个节点都可以处理搜索请求。

  2. 文档存储: 数据以文档的形式存储,每个文档是一个 JSON 对象。这种文档存储模型非常灵活,适用于各种类型和结构的数据。

  3. 倒排索引: Elasticsearch 使用倒排索引(Inverted Index)来加速全文搜索。倒排索引是一种将文档中的每个词映射到包含该词的文档的结构,使得搜索和过滤操作更加高效。

  4. 实时性: Elasticsearch 提供几乎实时的搜索和分析能力。当数据发生变更时,可以迅速地将这些变更应用到索引中,实现快速的索引和查询操作。

  5. 多种数据类型: Elasticsearch 支持多种数据类型,包括文本、数字、日期、地理位置等。这种灵活性使其适用于各种不同类型的数据。

  6. RESTful API: Elasticsearch 提供基于 RESTful 风格的 API,通过简单的 HTTP 请求进行操作。这样的设计使得 Elasticsearch 易于集成和使用。

  7. 查询语言: Elasticsearch 提供强大的查询语言,支持全文搜索、模糊搜索、聚合、过滤等丰富的查询操作。查询语言通过 JSON 结构进行定义。

  8. 实时分析: Elasticsearch 不仅用于搜索,还提供了丰富的聚合和分析功能,用于生成仪表盘、报表和可视化结果。

  9. 插件生态系统: Elasticsearch 具有丰富的插件生态系统,允许用户根据需求扩展其功能。这些插件可以提供额外的搜索和分析功能,以及与其他系统的集成。

  10. 开源和社区支持: Elasticsearch 是开源的,遵循 Apache 2.0 许可证。这使得它成为一个活跃的开源项目,拥有庞大的社区支持和贡献者。

3.基本架构与核心概念

可直接参考下方学习资料,

case1: 快速入门推荐二手博客,整理的非常不错;

case2: 实际研究学习推荐官方文档和源码库。

未完待续。。。。

学习参考资料:

  1. 官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/elasticsearch-intro.html
  2. 源码:https://github.com/elastic/elasticsearch
  3. 阿甘研究elasticsearch专栏(入门学习推荐). https://www.zhihu.com/column/c_1666374962351960064
  4. 小脑不发达(直观)https://zhuanlan.zhihu.com/p/434679339
  5. 不吃紫菜(容易理解,入门到精通,举例+实践)https://www.cnblogs.com/buchizicai/p/17093719.html
相关推荐
SelectDB1 小时前
拉卡拉 x Apache Doris:统一金融场景 OLAP 引擎,查询提速 15 倍,资源直降 52%
大数据·数据库·数据分析
合合技术团队2 小时前
实测对比|法国 AI 独角兽公司发布的“最强 OCR”,实测效果如何?
大数据·人工智能·图像识别
lilye664 小时前
程序化广告行业(39/89):广告投放的数据分析与优化秘籍
大数据·人工智能·数据分析
IT成长日记4 小时前
Elasticsearch安全加固指南:启用登录认证与SSL加密
安全·elasticsearch·ssl
Elasticsearch5 小时前
现在支持通过 EDOT Collector 在 Kubernetes 上动态发现工作负载
elasticsearch
中科岩创6 小时前
某地老旧房屋自动化监测项目
大数据·物联网·自动化
viperrrrrrrrrr77 小时前
大数据学习(95)-谓词下推
大数据·sql·学习
汤姆yu7 小时前
基于python大数据的旅游可视化及推荐系统
大数据·旅游·可视化·算法推荐
zhangjin12227 小时前
kettle从入门到精通 第九十四课 ETL之kettle MySQL Bulk Loader大批量高性能数据写入
大数据·数据仓库·mysql·etl·kettle实战·kettlel批量插入·kettle mysql
哈哈真棒8 小时前
hadoop 集群的常用命令
大数据