elasticsearch系列(一)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: 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

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
6月前
|
存储 搜索推荐 关系型数据库
为什么需要 Elasticsearch
为什么需要 Elasticsearch
46 0
|
6月前
|
搜索推荐 关系型数据库 MySQL
【Elasticsearch】初识elasticsearch
【Elasticsearch】初识elasticsearch
70 1
|
6月前
|
存储 JSON 监控
Elasticsearch简单讲解
Elasticsearch简单讲解
77 0
|
存储 监控 搜索推荐
【Elasticsearch】初识elasticsearch(上)
【Elasticsearch】初识elasticsearch
73 0
|
存储 JSON 自然语言处理
【Elasticsearch】初识elasticsearch(下)
【Elasticsearch】初识elasticsearch(下)
72 0
|
自然语言处理 索引
如果还不会Elasticsearch这七个问题 那么你的Elasticsearch白学
如果还不会Elasticsearch这七个问题 那么你的Elasticsearch白学
76 0
|
SQL 搜索推荐 数据挖掘
大话ElasticSearch(下)
搜索引擎简述 什么是搜索? 搜索:就是在任何场景下,找寻你想要的信息,这个时候,会输入一段你要搜索的关键字,然后就期望找到这个关键字相关的有些信息。 搜索分类: 普通的网页搜索、垂直搜索引擎等