elasticsearch系列(一)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 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并实现搜索。  
相关文章
|
8月前
|
存储 分布式计算 负载均衡
数据分布式存储:在海量数据面前,我们如何站稳脚跟?
数据分布式存储:在海量数据面前,我们如何站稳脚跟?
1163 1
|
10月前
|
存储 数据挖掘 数据处理
Python Pandas入门:行与列快速上手与优化技巧
Pandas是Python中强大的数据分析库,广泛应用于数据科学和数据分析领域。本文为初学者介绍Pandas的基本操作,包括安装、创建DataFrame、行与列的操作及优化技巧。通过实例讲解如何选择、添加、删除行与列,并提供链式操作、向量化处理、索引优化等高效使用Pandas的建议,帮助用户在实际工作中更便捷地处理数据。
240 2
|
SpringCloudAlibaba API 开发者
新版-SpringCloud+SpringCloud Alibaba
新版-SpringCloud+SpringCloud Alibaba
|
存储 监控 算法
jvm-性能调优(二)
jvm-性能调优(二)
|
存储 消息中间件 网络协议
日志平台-ELK实操系列(一)
日志平台-ELK实操系列(一)
|
消息中间件 中间件 关系型数据库
常用的分布式事务解决方案(四)
常用的分布式事务解决方案(四)
|
存储 SQL 分布式计算
|
Java Spring
面对Spring 不支持java8的改变方法
面对Spring 不支持java8的改变方法
java使用ServerSocket和Socket实现客户端与服务端通讯
java使用ServerSocket和Socket实现客户端与服务端通讯
142 0
|
存储 JSON NoSQL
深入解析MongoDB的存储原理
深入解析MongoDB的存储原理
深入解析MongoDB的存储原理