ElasticSearch
发表于|更新于|后端
|浏览量:
ElasticSearch的应用场景说明
全文检索能力


日志存储分析能力



数据存储(用的比较少)

全文检索
什么是全文检索


存在索引关键字,就是命中文档
使用关键字就可以搜索对应的文档数据

检索算法

倒排索引
先将非结构化数据转换为结构化数据,之后使用关键字建立索引


全文检索的结构



索引库结构

检索流程

ElasticSearch 实践与集群架构
ES 集群架构






ES是如何进行分片存储的?

主分片和副本分片的关系:


数据在主分片上做写入,主从节点都可以进行数据写入和数据的读取。
主分片是读写,从分片只可以读不可以写。
分片和节点是不一样的。
节点类型





ES集群故障转移



ES横向扩容能力



ES 集群脑裂


文档读写路由



文章作者: 褚成志
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 褚成志的分享站!
相关推荐
2026-04-09
Elasticsearch指标监控
视图预览阿里云 Elasticsearch 指标展示,包括集群状态,索引QPS,节点 CPU/内存/磁盘使用率等 版本支持操作系统支持:Linux 前置条件 服务器 <安装 Datakit> 服务器 <安装 Func 携带版> 阿里云 RAM 访问控制账号授权 RAM 访问控制 登录 RAM 控制台 https://ram.console.aliyun.com/users 新建用户:人员管理 - 用户 - 创建用户 保存或下载 AccessKey ID 和 AccessKey Secret 的 CSV 文件 (配置文件会用到) 用户授权 (云监控只读/时序指标数据权限) 安装配置说明: 示例 Linux 版本为:CentOS Linux release 7.8.2003 (Core) 通过一台服务器采集所有阿里云 Elasticsearch 数据 部署实施脚本市场 登录 Func,地址 http://ip:8088 开启脚本市场,管理 - 实验性功能 - 开启脚本市场模块 载入阿里云数据同步脚...
2026-04-09
Hadoop-yarn
Yarn资源调度器Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序则相当于运行于操作系统之上的应用程序。 Y****arn基本架构YARN主要由ResourceManager、NodeManager、ApplicationMaster和Container等组件构成。 Y****arn工作机制 (1)MR程序提交到客户端所在的节点。 (2)YarnRunner向ResourceManager申请一个Application。 (3)RM将该应用程序的资源路径返回给YarnRunner。 (4)该程序将运行所需资源提交到HDFS上。 (5)程序资源提交完毕后,申请运行mrAppMaster。 (6)RM将用户的请求初始化成一个Task。 (7)其中一个NodeManager领取到Task任务。 (8)该NodeManager创建容器Container,并产生MRAppmaster。 (9)Container从HDFS上拷贝资源到本地。 (10)MRAppmaster向RM 申请运行MapT...
2026-04-09
presto配置
presto启动时默认配置文件目录在安装目录下的etc下 每个节点的配置在etc下创建node.properties文件,配置如下: 123node.environment=productionnode.id=ffffffff-ffff-ffff-ffff-ffffffffffffnode.data-dir=/var/presto/data node.environment: 集群名字,一个集群内所有的节点必须一致。 node.id: 节点id,每个节点同一集群内保持唯一。 node.data-dir:节点数据目录,数据目录用于存放日志和服务的pid。 服务配置presto server分为coordinator和worker,coordinator可以认为是master节点,worker可以认为是计算节点。配置时在etc下创建config.properties文件。 coordinator配置如下:12345678coordinator=truenode-scheduler.include-coordinator=falsehttp-server.http.port=8...
2026-04-09
Hadoop--HDFS
注意机器启动过之后,同步的时候不要同步data文件夹 一次写入,多次读出,不支持文件修改。适合数据分析,不适合网盘应用 分布式存储,文件系统。 优点: 高容错性。多复制,丢失自动恢复 适合大数据,数据以及文件规模 可以在廉价机器上,多副本来实现高可靠 缺点: 不适合低延时数据访问 无法对小文件高效存储 不支持并发多线程同时写入、文件随机修改,只支持append 组成nn:master, 管理HDFS命名空间; 配置副本策略(放在那个nn节点); 管理数据块Block(DN里面存放的是一个个数据块,不是简单的文件)的映射信息; 处理客户端读写请求 dn:slave,nn下达指令,DN执行操作。 存储实际的数据块,数据块的形式存在 执行读写操作。 client: 文件切块,block大小由此处决定,平衡数据存储 与NN交互,获取文件位置信息 DN交互,获取文件信息 访问和管理HDFS 2NN: NN助手 HDFS文件块: 物理上是分块存储的,大小可以通过配置参数来决定,默认是128M web页面无法新建文件夹权限问题http://hadoop101:98...
2026-04-09
SpringDataElasticsearch聚合实现过滤搜索
过滤功能分析整个过滤部分有3块: 顶部的导航,已经选择的过滤条件展示: 商品分类面包屑 其它已选择过滤参数 过滤条件展示,又包含3部分 商品分类展示 品牌展示 其它规格参数 展开或收起的过滤条件的按钮 顶部导航要展示的内容跟用户选择的过滤条件有关。这部分需要依赖第二部分:过滤条件的展示和选择。展开或收起的按钮是否显示,取决于过滤条件有多少,如果很少,那么就没必要展示。所以也是跟第二部分的过滤条件有关。 先做第二部分:过滤条件展示。 分类和品牌过滤条件 获取和展示数据库中已经有所有的分类和品牌信息。无论是分类信息,还是品牌信息,都应该从搜索的结果商品中进行聚合得到。 扩展返回的结果返回的结果PageResult对象,里面只有total、totalPage、items3个属性。现在要对商品分类和品牌进行聚合,添加分类和品牌的数据。 分类:页面显示了分类名称,但背后肯定要保存id信息。所以至少要有id和name 品牌:页面展示的有logo,有文字,当然肯定有id,基本上是品牌的完整数据 新建一个类,继承PageResult,然后扩展两个新的属性:分类集合和品牌集合: 123...
2026-04-09
Hadoop-MapReduce
dr.who是通过http连接的默认用户,可以直接在配置文件里面修改为当前用户,重启之后就可以使用当前用户在页面里面对文件进行相关操作。 MapReduce概述分布式运算程序的编程框架,是用户开发“基于Hadoop的数据分析应用”的核心框架。 MapReduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。 优点**MapReduce ****易于编程**它简单的实现一些接口,就可以完成一个分布式程序,这个分布式程序可以分布到大量廉价的PC机器上运行。 好的扩展性当你的计算资源不能得到满足的时候,你可以通过简单的增加机器来扩展它的计算能力。 高容错性MapReduce设计的初衷就是使程序能够部署在廉价的PC机器上,这就要求它具有很高的容错性。比如其中一台机器挂了,它可以把上面的计算任务转移到另外一个节点上运行,不至于这个任务运行失败,而且这个过程不需要人工参与,而完全是由Hadoop内部完成的。 适合PB级以上海量数据的离线处理可以实现上千台服务器集群并发工作,提供数据处理能力。 缺点不擅长实时计算MapRedu...
公告
👋 你好,我是褚成志,一名专注于云原生与后端架构的工程师。
热爱 Java、Kubernetes、Linux、Redis、Spring 等技术领域,持续探索 AGI 与智能化运维的边界。
这里记录我的技术思考与实践总结,欢迎交流!
热爱 Java、Kubernetes、Linux、Redis、Spring 等技术领域,持续探索 AGI 与智能化运维的边界。
这里记录我的技术思考与实践总结,欢迎交流!
目录
