Elasticsearch索引入门与Lucene原理解析
需积分: 20 77 浏览量
更新于2024-07-09
收藏 1.43MB PPTX 举报
"此资源是一个关于Elasticsearch索引的PPT介绍,适合用于项目培训,内容涉及索引的创建、管理以及文档的处理,还涵盖了Elasticsearch与Lucene的关系,字段类型的变化以及自定义分析器等核心概念。"
Elasticsearch (ES) 是一个流行的开源搜索引擎和分析平台,它基于分布式、RESTful架构,广泛应用于日志分析、实时数据分析等领域。索引是ES中的关键概念,类似于传统数据库中的表,用于存储和检索数据。
在ES中,**禁止自动创建index** 可以通过修改`config/elasticsearch.yml`配置文件实现,将`action.auto_create_index`设置为`false`。**创建index** 需要指定`number_of_shards`(主分片数)和`number_of_replicas`(副本数)。主分片数一旦设定,后期无法更改,而副本数可以在之后进行调整。**查看index** 和**删除index** 有相应的API操作,同样,可以通过API来**创建和管理type**,但ES在6.0版本后不再支持多类型(index内包含多个type)。
**document** 是ES中的基本数据单元,相当于数据库中的记录。在用户眼中,document可能是一条包含各种字段的数据;在Lucene(ES底层的全文检索库)眼中,document被转化为一系列的词汇项(token);而在ES眼中,document会被映射成特定的mapping,每个字段都有对应的类型和索引策略。
**字段类型** 在ES的新版本中发生了变化,`string`类型被替换为`text`和`keyword`。`text`字段默认进行分词处理,适用于全文搜索;而`keyword`字段则保持原样,适用于精确匹配。**字段索引** 分为三种概念:`index=true`表示字段被索引并可搜索,`index=false`则字段不被索引,无法搜索。`type=string`会先分词再索引,而`type=keyword`则直接整体索引。
**倒排索引** 是ES的核心机制,它使得快速查找匹配的文档成为可能。**自定义分析器** 可以通过`char_filter`(字符过滤)、`tokenizer`(分词器)和`filter`(词过滤器)来定制文本处理流程。例如,可以创建一个名为`my_analyzer`的自定义分析器,组合使用内置的`html_strip`字符过滤器、`standard`分词器和`my_stopwords`过滤器。
此外,ES还支持**动态映射**,这意味着在插入document时,如果包含了type中未定义的字段,系统可以根据字段的性质自动添加映射。动态映射的策略可以设置为`true`、`false`或`strict`,分别表示允许、禁止或严格检查新增字段。
这个PPT提供了全面的ES索引基础和实践指导,对于理解和掌握Elasticsearch的索引管理和数据处理非常有帮助。
2021-08-16 上传
2021-10-28 上传
2020-05-20 上传
2023-05-19 上传
2023-05-27 上传
2023-07-14 上传
2023-07-26 上传
2023-12-05 上传
2024-05-15 上传
qq_25020179
- 粉丝: 0
- 资源: 6
最新资源
- MATLAB实现小波阈值去噪:Visushrink硬软算法对比
- 易语言实现画板图像缩放功能教程
- 大模型推荐系统: 优化算法与模型压缩技术
- Stancy: 静态文件驱动的简单RESTful API与前端框架集成
- 掌握Java全文搜索:深入Apache Lucene开源系统
- 19计应19田超的Python7-1试题整理
- 易语言实现多线程网络时间同步源码解析
- 人工智能大模型学习与实践指南
- 掌握Markdown:从基础到高级技巧解析
- JS-PizzaStore: JS应用程序模拟披萨递送服务
- CAMV开源XML编辑器:编辑、验证、设计及架构工具集
- 医学免疫学情景化自动生成考题系统
- 易语言实现多语言界面编程教程
- MATLAB实现16种回归算法在数据挖掘中的应用
- ***内容构建指南:深入HTML与LaTeX
- Python实现维基百科“历史上的今天”数据抓取教程