Logo
☆☆☆☆☆
0.0
Intermediate
10h

Elasticsearch 基础:数据索引与查询

本课程深入探讨 Elasticsearch,这是一个基于 Java 的开源全文搜索与分析引擎,其核心基于 Lucene 库的强大功能。你将了解它作为企业数据通用搜索工具的多种能力,包括数据存储、对精确文本及拼写错误文本的搜索,以及对海量数据集进行实时分析。 在本课程中,你将全面掌握 Elasticsearch 的架构原理,并熟练掌握在 Elasticsearch 框架中进行数据索引与存储的方法。你将逐步学习如何执行各类查询操作,包括模糊查询,并深入理解每种操作的细节及其在 Elasticsearch 中的具体实现方式。 完成本课程后,你将全面理解 Elasticsearch 的内部工作机制,并具备有效运用它来满足自身数据管理与分析需求的能力。

6 Lessons
Included in Subscription Plan
Personalized Learning
Powered by AI
Elasticsearch 基础:数据索引与查询
本课程深入探讨 Elasticsearch,这是一个基于 Java 的开源全文搜索与分析引擎,其核心基于 Lucene 库的强大功能。你将了解它作为企业数据通用搜索工具的多种能力,包括数据存储、对精确文本及拼写错误文本的搜索,以及对海量数据集进行实时分析。 在本课程中,你将全面掌握 Elastic...

WHAT YOU'LL LEARN

对 Elasticsearch 核心数据结构(如倒排索引)的理解,以及如何高效地进行数据索引和查询

Content

6 Lessons • 0 Quizzes • 0 Challenges

Elasticsearch 简介
  1. 1

    Elasticsearch

  2. 2

    什么是 Elastic Stack?

开始使用 Elasticsearch
  1. 1

    Elasticsearch 的架构 Elasticsearch 是一个分布式、可扩展的搜索和分析引擎,基于 Apache Lucene 构建。它采用主从架构(Master-Replica),支持水平扩展,能够处理大量数据并提供近实时的搜索能力。 核心组件包括: 1. 节点(Node) - 每个运行 Elasticsearch 的实例称为一个节点。 - 节点可以是主节点(Master Node)、数据节点(Data Node)、协调节点(Coordinating Node)或专用主节点(Ingest Node)。 - 主节点负责集群管理,如创建或删除索引、跟踪节点状态等。 - 数据节点存储数据并执行数据相关的操作,如搜索和聚合。 - 协调节点接收客户端请求,并将请求分发到合适的节点,然后汇总结果返回给客户端。 - Ingest 节点用于预处理数据,例如解析、转换和过滤文档。 2. 集群(Cluster) - 一组连接在一起的节点组成一个集群。 - 集群通过选举机制选出一个主节点来管理整个集群的状态。 - 集群具有自我修复能力,当节点失效时,系统会自动重新分配分片。 3. 索引(Index) - 索引是逻辑上的数据容器,类似于关系型数据库中的“数据库”。 - 一个索引由多个分片(Shard)组成,每个分片是一个独立的 Lucene 索引。 - 分片分为主分片(Primary Shard)和副本分片(Replica Shard),副本分片用于提高可用性和容错性。 4. 分片(Shard) - 分片是索引的物理划分单位,用于实现数据的分布式存储。 - 主分片用于写入数据,副本分片用于读取和故障恢复。 - 分片数量在索引创建时确定,之后不可更改。 - 分片可以分布在不同的节点上,以实现负载均衡和高可用。 5. 倒排索引(Inverted Index) - Elasticsearch 使用倒排索引结构来实现高效文本搜索。 - 倒排索引将文档中出现的每个词映射到包含该词的文档列表,从而快速定位匹配文档。 6. RESTful API - Elasticsearch 提供基于 HTTP 的 RESTful API,支持对索引、文档进行增删改查操作。 - 可通过 curl、Postman 或编程语言客户端(如 Java、Python)与之交互。 7. 分布式特性 - 所有节点之间通过内部通信协议保持同步。 - 数据写入时,先写入主分片,再复制到副本分片。 - 搜索请求被发送到所有相关分片,结果合并后返回。 8. 高可用与容错 - 通过副本分片实现数据冗余,即使某个节点宕机,数据仍可通过副本访问。 - 主节点故障时,其他节点会重新选举新的主节点,确保集群持续运行。 9. 扩展性 - 支持横向扩展:通过添加更多节点来提升性能和容量。 - 可以动态调整分片数量(需重建索引)以适应数据增长。 10. 插件与扩展 - 支持通过插件扩展功能,如安全认证、监控、分析、机器学习等。 整体架构设计使得 Elasticsearch 适用于日志分析、全文搜索、实时数据分析等场景,具备高性能、高可用和易扩展的特点。

  2. 2

    与 Elasticsearch 交互

  3. 3

    CRUD 操作

  4. 4

    映射

  5. 5

    关键字与文本数据类型

  6. 6

    脚本与运行时字段

  7. 7

    测验:开始使用 Elasticsearch

文本分析
  1. 1

    什么是文本分析?

  2. 2

    Elasticsearch 中的分析器

  3. 3

    自定义分析器

  4. 4

    自定义分析器:字符过滤器

  5. 5

    自定义分析器:分词器

  6. 6

    自定义分析器:词元过滤器

  7. 7

    内置分析器

  8. 8

    挑战:分析器

  9. 9

    解决方案:分析器

  10. 10

    测验:文本分析

在 ElasticSearch 中进行搜索
  1. 1

    搜索请求简介

  2. 2

    全文查询:匹配查询

  3. 3

    全文查询:匹配查询参数

  4. 4

    全文检索:探索更多查询方式

  5. 5

    词条级查询:词条查询

  6. 6

    词条级查询:范围查询

  7. 7

    词条级查询:深入探索更多查询方式

  8. 8

    模糊搜索

  9. 9

    复合查询:布尔查询

  10. 10

    挑战:在 Elasticsearch 中进行搜索

  11. 11

    解决方案:在 Elasticsearch 中搜索

  12. 12

    测验:在 Elasticsearch 中进行搜索

聚合
  1. 1

    聚合简介

  2. 2

    桶聚合

  3. 3

    指标聚合

  4. 4

    结合桶聚合与指标聚合

  5. 5

    管道聚合

  6. 6

    嵌套桶聚合

  7. 7

    挑战:聚合

  8. 8

    解决方案:聚合

  9. 9

    测验:聚合

结论
  1. 1

    总结与下一步

Certificate of Completion

Showcase your accomplishment by sharing your certificate of completion.

Course Author:Anonymous User

Reviews

Read reviews from students who have taken this course and share your own experience.

Reviews & Comments (0)