集群-集群储存结构设计|学习笔记

简介: 快速学习集群-集群储存结构设计

发者学堂课程【Redis 入门到精通(进阶篇)集群-集群储存结构设计学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/765/detail/13467


集群-集群储存结构设计

 

内容介绍

一、 数据存储设计

二、 内部通讯设计

 

一、数据存储设计

通过算法设计,计算出 key 应该保存的位置。如果一个 key 对应多台计算机,首先key 通过一个方法运行之后会得到一个值,这个值再通过16384后会得到一个数,通过这个数确定在计算机中的存储位置。

image.png

Redis 服务器会把他存储的计算机进行16384等分,每一份代表一个存储空间,每一台计算机保存若干个这样的存储空间。每一份代表的是一个存储空间,不是存储一个 key 的保存空间。

image.png

key 按照计算出的结果放到对应的存储空间

image.png

增强可扩展性。假定现在有三个存储空间,现在增加一个节点。增加节点后会经过计算将每个节点的一部分加到新的节点中,这样就会拥有很强的扩展性。

image.png

用来放数据的空间区域叫做槽,所谓的增去节点就是改变槽所存储位置不同。多台机器合作工作就是一个机器持有一定的槽,当加机器时把他的槽分一部分给新的机器,如果去机器,把要去的槽返回到现有的机器中。

 

二、内部通讯设计

image.png

各个数据库相互通信,保存各个库中槽的编号数据。假定现有一台计算机发出一个key 访问,首先通过 key 经过两个算法后会得到 key 对应的存储槽位置。如果一次命中直接返回,如果没有一次命中,他会根据记录槽位置去告知具体位置。做加密的过程就是为了确定存储位置保证最多两次命中。

相关文章
|
存储 算法
数据仓库数据模型之:极限存储--历史拉链表
摘要: 在数据仓库的数据模型设计过程中,经常会遇到文内所提到的这样的需求。而历史拉链表,既能满足对历史数据的需求,又能很大程度的节省存储资源。 在数据仓库的数据模型设计过程中,经常会遇到这样的需求:1. 数据量比较大;2. 表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等;3. 需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的
5577 0
|
1月前
|
存储 消息中间件 大数据
大数据-69 Kafka 高级特性 物理存储 实机查看分析 日志存储一篇详解
大数据-69 Kafka 高级特性 物理存储 实机查看分析 日志存储一篇详解
38 4
|
6月前
|
存储 缓存 固态存储
|
6月前
|
消息中间件 存储 缓存
Kafka【基础知识 02】集群+副本机制+数据请求+物理存储+数据存储设计(图片来源于网络)
【2月更文挑战第20天】Kafka【基础知识 02】集群+副本机制+数据请求+物理存储+数据存储设计(图片来源于网络)
132 1
|
6月前
|
NoSQL 关系型数据库 MySQL
单机模拟集群(三主两从)
单机模拟集群(三主两从)
|
存储 负载均衡 数据中心
带你读《存储漫谈:Ceph原理与实践》——3.2.5 元数据 / 数据同步
带你读《存储漫谈:Ceph原理与实践》——3.2.5 元数据 / 数据同步
|
存储 NoSQL 容灾
分片概念&架构目标|学习笔记
快速学习分片概念&架构目标
分片概念&架构目标|学习笔记
|
存储 负载均衡 算法
【集群】集群的概念(相关知识)、常用工具/算法、常见集群
文章目录 前言 一、集群架构 1.1 负载调度器 1.1.1 常用调度算法
214 0
【集群】集群的概念(相关知识)、常用工具/算法、常见集群
|
存储 机器学习/深度学习 JSON
探究 | Elasticsearch集群规模和容量规划的底层逻辑
实战中经常遇到的问题: 问题 1:请问下大家是如何评估集群的规模?比如数据量达到百万,千万,亿万,分别需要什么级别的集群,这要怎么评估? ps:自己搭建的测试环境很难达到这一级别。
665 1
探究 | Elasticsearch集群规模和容量规划的底层逻辑
|
设计模式 JSON NoSQL
集群设计那点事|学习笔记
快速学习集群设计那点事
130 0
集群设计那点事|学习笔记
下一篇
无影云桌面