分布式数据库的分片方法

一、分片的定义和作用

定义:分布式数据库中数据的存储单位成为片段。对全局数据库的划分叫做分片。划分的结果就是片段。每个片段可以保存在一个以上的场地(服务器)。

作用:

1、减少网络传输量

对数据进行复制存储,目的是可以就近访问所需数据副本,减少网络上的数据传输量。

2、增大事务处理的局部性

3、提高数据的可用性和查询效率。

4、负载均衡。

二、分片设计过程

分片过程是将全局数据进行逻辑划分和实际物理分配过程。全局数据由分片成各个片段数据,各个片段分配到不同的场地(服务器)上。

全局数据库----->片段数据库-------->物理数据库。

三、分片原则

在设计分布式数据库的时候,设计者必须考虑数据如何分布在各个场地上,也就是全局数据应该如何进行逻辑划分和物理划分。哪些数据应该分布式存放,哪些不需要分布式存放,哪些数据需要复制。对系统惊醒全盘考虑,使系统性能最优。但是无论如何进行分片都应该遵循以下原则:

1、完备性:所有全局数据都要映射到某个片段上。

2、可重构性:所有片段必须可以重新构成全局数据。

3、不相交性:划分的个片段所包含的数据无交集。

分片有三种方式:水平分片、垂直分片、混合分片。

 

四、水平分片

水平分片是将数据按照元组来划分,在关系数据库中也就是根据属性的条件按照行划分,该属性叫做分片属性,条件就是分片条件。

1、基本水平分片

根据关系表本身的属性分片

2、导出水平分片

分片属性不是该关系表中的属性。



五、垂直分片 

垂直分片是把一个关系表按照列来分成片段,各个片段之间除了主键外不能有交集。


水平和垂直分片的结合五、混合分片



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值