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,分布式的存储在各个服务器上面。

相关推荐
极客数模2 小时前
【2026美赛赛题初步翻译F题】2026_ICM_Problem_F
大数据·c语言·python·数学建模·matlab
编程彩机4 小时前
互联网大厂Java面试:从分布式架构到大数据场景解析
java·大数据·微服务·spark·kafka·分布式事务·分布式架构
vx-bot5556664 小时前
企业微信接口在多租户SaaS平台中的集成架构与数据隔离实践
大数据·架构·企业微信
bubuly7 小时前
软件开发全流程注意事项:从需求到运维的全方位指南
大数据·运维·数据库
xixixi777778 小时前
基于零信任架构的通信
大数据·人工智能·架构·零信任·通信·个人隐私
Hello.Reader9 小时前
Flink 自适应批执行(Adaptive Batch Execution)让 Batch 作业“边跑边优化”
大数据·flink·batch
LaughingZhu10 小时前
Product Hunt 每日热榜 | 2026-01-31
大数据·人工智能·经验分享·搜索引擎·产品运营
babe小鑫11 小时前
中专学历进入快消大厂终端销售岗位的可行性分析
大数据
samFuB11 小时前
【工具变量】区县5A级旅游景区DID数据集(2000-2025年)
大数据
百夜﹍悠ゼ11 小时前
数据治理DataHub安装部署
大数据·数据治理