ElasticSearch
ElasticSearch https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html
请注意:
本书基于 Elasticsearch 2.x 版本,有些内容可能已经过时。
基本概念
倒排索引
FST
理解FST构建流程的地址:http://examples.mikemccandless.com/fst.py?terms=mop%2F0 moth%2F1 pop%2F2 star%2F3 stop%2F4 top%2F5 &cmd=Build+it!
Mapping
ES中的mapping 类似于mysql中的"表结构"的概念,mapping中包含了一些字段名称、字段类型还有索引信息。同时也包含了一些属性 比如字段的分词器、是否评分等。
GET /index/_mapping
查看mapping
ES数据类型
-
常见类型
1.1.数字类型
long integer short byte double float half_float scaled_float unsined_float
1.2.Keywords- keyword : 适用于索引结构化数据,可以过滤、排序、聚合。keyword类型的值只能通过精确值(exact value)匹配到。 例如 id应该使用keyword
- constant_keyword: 是中包含相同值的关键字字段
- wildcard: 可针对类似grep通配符查询优化日志行和关键字查询
1.3.Dates: 包含date 和 date nanos
1.4.alias:为现有字段定义别名
1.5.text:当一个字段是要被全文搜索的,需要被设置成text类型 字段内容会被分析,在生成倒排索引以前,字符串会被分析企被分解为词项 text字段不用于排序 很少用于聚合 -
对象关系类型
2.1.object类型:用于单个json对象
2.2.nested类型:用于json对象数组
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端