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


日志存储分析能力



数据存储(用的比较少)

全文检索
什么是全文检索


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

检索算法

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


全文检索的结构



索引库结构

检索流程

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






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

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


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





ES集群故障转移



ES横向扩容能力



ES 集群脑裂


文档读写路由



相关推荐
2026-04-09
SpringDataElasticsearch聚合实现过滤搜索
过滤功能分析整个过滤部分有3块: 顶部的导航,已经选择的过滤条件展示: 商品分类面包屑 其它已选择过滤参数 过滤条件展示,又包含3部分 商品分类展示 品牌展示 其它规格参数 展开或收起的过滤条件的按钮 顶部导航要展示的内容跟用户选择的过滤条件有关。这部分需要依赖第二部分:过滤条件的展示和选择。展开或收起的按钮是否显示,取决于过滤条件有多少,如果很少,那么就没必要展示。所以也是跟第二部分的过滤条件有关。 先做第二部分:过滤条件展示。 分类和品牌过滤条件 获取和展示数据库中已经有所有的分类和品牌信息。无论是分类信息,还是品牌信息,都应该从搜索的结果商品中进行聚合得到。 扩展返回的结果返回的结果PageResult对象,里面只有total、totalPage、items3个属性。现在要对商品分类和品牌进行聚合,添加分类和品牌的数据。 分类:页面显示了分类名称,但背后肯定要保存id信息。所以至少要有id和name 品牌:页面展示的有logo,有文字,当然肯定有id,基本上是品牌的完整数据 新建一个类,继承PageResult,然后扩展两个新的属性:分类集合和品牌集合: 123...
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
Presto
Presto是一种工具,旨在使用分布式查询来有效查询大量数据。 如果您使用TB或PB的数据,则可能会使用与Hadoop和HDFS交互的工具。 Presto旨在替代使用MapReduce作业的管道(例如Hive或Pig)查询HDFS的工具的替代方案,但Presto不仅限于访问HDFS。 Presto可以并且已经扩展为可以在包括传统关系数据库和其他数据源(例如Cassandra)在内的各种数据源上运行。 Presto旨在处理数据仓库和分析:数据分析,汇总大量数据并生成报告。 这些工作负载通常被归类为在线分析处理(OLAP)。 https://blog.csdn.net/cakexuexi/article/details/80820170
2026-04-09
Hadoop-MapReduce
dr.who是通过http连接的默认用户,可以直接在配置文件里面修改为当前用户,重启之后就可以使用当前用户在页面里面对文件进行相关操作。 MapReduce概述分布式运算程序的编程框架,是用户开发“基于Hadoop的数据分析应用”的核心框架。 MapReduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。 优点**MapReduce ****易于编程**它简单的实现一些接口,就可以完成一个分布式程序,这个分布式程序可以分布到大量廉价的PC机器上运行。 好的扩展性当你的计算资源不能得到满足的时候,你可以通过简单的增加机器来扩展它的计算能力。 高容错性MapReduce设计的初衷就是使程序能够部署在廉价的PC机器上,这就要求它具有很高的容错性。比如其中一台机器挂了,它可以把上面的计算任务转移到另外一个节点上运行,不至于这个任务运行失败,而且这个过程不需要人工参与,而完全是由Hadoop内部完成的。 适合PB级以上海量数据的离线处理可以实现上千台服务器集群并发工作,提供数据处理能力。 缺点不擅长实时计算MapRedu...
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
大数据概述
大数据( Big Data):指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。 主要解决海量数据的额存储和分析计算 特点:大量,高速,多样,低价值密度, 应用场景:物流仓储,分析用户零售,智慧旅游,广告推荐,保险预测,人工智能 大数据生态 1)Sqoop:Sqoop是一款开源的工具,主要用于在Hadoop、Hive与传统的数据库(MySql)间进行数据的传递,可以将一个关系型数据库(例如 :MySQL,Oracle 等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。 2)Flume:Flume是一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据; 3)Kafka:Kafka是一种高吞吐量的分布式发布订阅消息系统; 4)Storm:Storm用于“连续计算”,对数据流做连续查询,在计算时就将结果以流的形式输出给用户。 5)Spark:Spark是当前最流...
公告
👋 你好,我是褚成志,一名专注于云原生与后端架构的工程师。
热爱 Java、Kubernetes、Linux、Redis、Spring 等技术领域,持续探索 AGI 与智能化运维的边界。
这里记录我的技术思考与实践总结,欢迎交流!
热爱 Java、Kubernetes、Linux、Redis、Spring 等技术领域,持续探索 AGI 与智能化运维的边界。
这里记录我的技术思考与实践总结,欢迎交流!
目录
