后端学习笔记 day4

1.分区和复制的区别

复制是相同的数据在多个节点冗余,比如我们都备份相同的连城诀的完整版,分区是我们各存储一部分,比如连城诀分成上中下三部,我们师兄弟三人分别存储, 结合分区和复制就是比如每人存储2/3,既有分区也有复制。

2.key value数据确定处于哪个分区的方法

一种是利用关键字的区间分区,这种分区方法不能按照关键字平分,而应根据数据的特性或手工设置;一种是利用对关键字哈希之后再存储。

区间分区的好处是支持区间查询,哈希分区虽然让负载更加均衡但是不能支持区间查找,这种查找的使用还是很常见的,比如查找某个用户这个月的点赞数据。

3.分区和节点的对应方法

有固定分区法,固定每个分区在哪个节点;有动态分区法,根据分区的大小动态的调整。这两种方法都是一个节点可以对应多个分区。对于固定分区法,因为分区的数目已经固定,所以每个分区的大小和数据量成正比,且应该让数据尽量均匀。对于动态分区法,分区的大小通常有一个上限,当到达上限时就增加分区的数量,把一部分数据移动到其他节点。

4.复制的问题

在复制中问题主要是主从节点的协调,让从节点追赶主节点;多主节点的协调,多个主节点在一定的约束下防止写冲突;无主节点确保数据写入读出成功。这些主要是通信上面的问题,因为网络传输具有一定的延迟性,所以必须去处理不一致的问题。数据分区更多是关于某个数据在哪些节点的问题。

5.服务发现问题

服务发现是指因为我们对数据进行了分区处理,所以就不是任何节点都持有客户端希望访问的数据,客户端需要有办法知道数据在哪个节点。

服务发现可以在三个部分设置,一是随机访问节点,由该节点通知希望访问的数据所在节点;二是利用中间路由层去访问;三是客户端直接掌握路由信息。

总结:复制和分区是联系的内容,一部分主要和最终一致性有关,一部分是关注数据的分区方法,这是我感觉很重要的部分。

相关推荐
优化Henry几秒前
LTE基站传输割接后S1连接失败排查实录
运维·网络·笔记·学习·信息与通信
脚踏实地,坚持不懈!34 分钟前
Linux 内存回收机制:水位线、kswapd 与 Direct Reclaim
linux·jvm·算法
SKH.36 分钟前
Linux驱动-key、中断
linux·运维·服务器
小龙报38 分钟前
【零到全栈】从扩展名到终端实操,打通 Linux 基础
linux·ubuntu·云原生·职场和发展·创业创新·学习方法·程序员创富
星恒随风1 小时前
Linux进程间通信(一):从匿名管道、命名管道到进程池,深入理解Pipe、FIFO与文件描述符
linux·运维·笔记·学习·状态模式
chde2Wang1 小时前
numpy学习2
学习·numpy
霖霖7141 小时前
【ESP32笔记】读取DHT11温湿度数据
笔记·单片机·mcu·物联网
Xudde.1 小时前
DC-6 靶机渗透测试(Vulnhub Writeup)
笔记·学习·安全·web安全
wuminyu1 小时前
ZGC染色指针在虚拟线程stackChunkOop上的并发屏障全景分析
java·linux·c语言·jvm·c++
xian_wwq1 小时前
【学习笔记-一文读懂系列】一文读懂Jev模型
笔记·学习