2024-01-25(ElasticSearch)

附上:ElasticSearch从入门到精通,史上最全(持续更新,未完待续,每天一点点)_elasticsearch从入门到精通,史上最全-CSDN博客

1.ES中存储不是重要的,搜索查询功能才是ES的核心

2.ES提供了基于JSON的DSL(Domain Specific Language)来定义查询。

常见的查询类型:查询所有,全文索引,精确查询,地理查询,复合查询。

3.精确查询的值是不可分割的整体,所以可以采用精确查询来做。

4.ES是分布式的,并且会将数据切分开的存储到不同的服务器上。所以ES会面临深度分页问题。

5.ES还可以把搜索结果高亮显示。例如百度搜索Java,Java关键字会红色显示。

原理:服务端将搜索结果中的关键字用标签标记出来,然后在页面中给标签添加CSS样式。

6.ES中的数据聚合:

聚合可以实现对文档数据的统计,分析,运算,聚合常见有三类:

桶聚合:用来对文档做分组

度量聚合:用来计算一些值,比如最大值,最小值,平均值等

管道聚合:其他聚合的结果为基础做聚合

7.技术都是根据需求来的,业务场景的使用推动技术的发展。业务高于技术。技术为业务服务。

8.ES中的分词器,包含三个部分:

character filters:在tokenizer之前对文本进行处理。例如删除字符,替换字符

tokenizer:将文本按照一定的规则切割成词条。

tokenizer filter:将tokenizer输出的词条做进一步处理。例如大小写转换,同义词处理,拼音处理等。

9.ES实现自动补全功能的查询

自动补全对字段的要求:类型是completion类型,字段值是多词条的数组

10.ES && MySQL 对比:

ES中的index索引库就类似于MySQL中的数据库。

ES中的Type类型就类似于MySQL中对于表的定义。

ES中的document文档就是最终存储数据的地方,类似于MySQL中表的一条数据。

ES中的Field字段类似于MySQL中的列的概念。

ES中的shard分片:一台服务器,无法存储大量的数据,ES把一个index里面的数据,分为多个shard,分布式的存储在各个服务器上面。

相关推荐
SelectDB35 分钟前
秒级弹性、最高降本 70%:SelectDB Serverless 如何重塑云数仓资源效率
大数据·后端·云原生
WhoAmI1 小时前
MapReduce框架原理解析一:InputFormat
大数据·hadoop
WhoAmI1 小时前
MapReduce框架原理解析三:OutputFormat
大数据·hadoop
WhoAmI1 小时前
MapReduce框架原理解析二:Shuffle
大数据·hadoop
大大大大晴天1 天前
Hudi技术内幕:Key Generation原理与实践
大数据
Elasticsearch1 天前
3个信号、2个环境变量、0个采集器:使用 Python 和 Elastic 的托管 OTLP 端点实现 OpenTelemetry
elasticsearch
Elasticsearch3 天前
如何通过 Claude Code 来写入 CSV 数据到 Elasticsearch
elasticsearch
得物技术4 天前
从埋点需求到规则资产:Hermes Agent 重构得物数仓工作流
大数据·llm·ai编程
久美子4 天前
AI驱动数仓建设的Harness工程实践——本体建模、知识分层与上下文工程
大数据