elasticsearch系列(一)

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介: elasticsearch系列(一)

以一个30个节点的集群为例,介绍一下ES的核心概念

ES分布式的好处

ES支持集群模式,是一个分布式系统,es集群是由多个实例组成的,一个节点叫做Node

其好处有两个:

①、方便扩展,增大系统容量:如内存,磁盘,使得es集群可以支持pb级的数据,高并发的优势

②、提高系统可用性:即使部分节点停止服务,整个集群依然可以正常服务,高可用的优势

ES的特点之一:分布式的文档存储,多节点,多分片

1、不是使用数据库的行存储,类似JSON文档的复杂数据结构,可以说成是nosql数据库,文档存储后,将在1s钟内默认刷新频率为1s几乎实时地对其进行索引和完成搜索,存进去到搜索1s。

2、Kibana是一个针对ES的开源分析以及可视化平台,用来搜索,查看交互存储在es索引中的数据,使用Kibana,可以通过各种图表进行高级数据的分析与展示

ES和mysql做对比:

1、mysql当中的数据库实例对应es中的索引,es索引中的type代表着数据库Mysql的表,只不过es把一个索引固定一个type,

2、在Mysql当中每个表都有表结构对应着es的映射mapping。在mysql当中每行数据,对应着es的每个文档documents,输入的时候默认是json文档对比mysql中的行。

3、在mysql当中有很多个列对应着es当中是很多个字段field,每个document有很多个字段,只不过底层的 数据结构存储的完全不一样。

问题:doc->index(type) 类同于row ->table吗

答案是:doc -》index之间,还有一个分片的概念,大的索引以很小的单位维护起来的。

比如:维护着1T的index,这个index对应mysql是表,放在一个节点的话:1个T的话硬盘是够的,但是内存一点不够的,放在一个节点是不现实的

大概是1个亿的文档。节点数是30个,平均的情况下是30个

index在每个节点就是一个shard,每个shard大概30G左右。

假设一个分片只有一份,会弄几个副本,大概一个副本,副本在不同的节点上。保证高可用,第一个副本可能在第二个节点来  保证高可用。故障转移的效果

7d948062460ada125c72b9b7b6667cb0.png

副本的重要性:

①、在分片/节点失败的情况下,副本提供了高可用性,复制分片不与原/主要分片置于同一节点是非常重要的。

②、提升搜索的吞吐量,因为搜索可以在所有的副本上并行运行,副本可以扩展你的搜索量/吞吐量,写的时候往正本写

b20fa10ac6df65530ef2cd5bf71c4911.png

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
负载均衡 监控 应用服务中间件
除了 Nginx,还有以下一些常见的负载均衡工具
【10月更文挑战第17天】这些负载均衡工具各有特点和优势,在不同的应用场景中发挥着重要作用。选择合适的负载均衡工具需要综合考虑性能、功能、稳定性、成本等因素。
2153 56
|
NoSQL 算法 关系型数据库
分布式 ID 详解 ( 5大分布式 ID 生成方案 )
本文详解分布式全局唯一ID及其5种实现方案,关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
分布式 ID 详解 ( 5大分布式 ID 生成方案 )
|
消息中间件 中间件 关系型数据库
常用的分布式事务解决方案(四)
常用的分布式事务解决方案(四)
|
前端开发
Bootstrap5 消息弹窗(Toasts)3
本示例展示了如何使用HTML和Bootstrap创建并显示多个消息弹窗。通过设置`.toast-container`类及相应的位置属性,可以轻松控制弹窗的布局与间距。每个弹窗包含标题、时间戳及关闭按钮,支持自定义内容显示。
|
存储 JSON NoSQL
深入解析MongoDB的存储原理
深入解析MongoDB的存储原理
深入解析MongoDB的存储原理
java使用ServerSocket和Socket实现客户端与服务端通讯
java使用ServerSocket和Socket实现客户端与服务端通讯
220 0
|
Java Spring
面对Spring 不支持java8的改变方法
面对Spring 不支持java8的改变方法
|
Linux
centos 修改ip地址
centos 修改ip地址
413 0
|
自然语言处理 搜索推荐 Java
服务搭建篇(七) Elasticsearch单节点部署以及多节点集群部署
Elasticsearch(简称ES) 是一个分布式 , RESTful风格的搜索和数据分析引擎 , 使用java开发并且是当前最流行的开源的企业级搜索引擎,能够达到近实时搜索,稳定,可靠,快速,安装使用方便。
2674 0
|
人工智能 5G 区块链
元宇宙游戏项目系统开发技术功能版及源码方案
元宇宙游戏项目系统开发技术功能版及源码方案
410 0

热门文章

最新文章