【数据库复习】分区

分区

写在前面的话

本文是本学渣因为考试需要写的一篇总结,只总结了需要考察的考点,所以可能有的内容引申的不多,请见谅。

一、本节考点

  1. 分区干嘛用的,为什么要分区
  2. 有哪几种分区的方式
  3. 根据example选择partition key
  4. 选择key的原则是什么,原则分区的原则
  5. 破例的原因是什么

二、分区是什么

分区就是将一个大表根据条件分割成若干个小表,将一张表从物理上划分到不同的介质中,但是逻辑上还是原来的那张表,是一种数据分组方式。
分区能够提高并发性和并行性,从而增强可伸缩性
提供了一种数据管理的方法

三、分区的类型

根据分区键(Partition Key)的类型分类,分区有以下几种类型:

  1. 哈希分区:按散列决定记录分在哪个分区
    把不同的列随机平均的分布到不同的物理环境,达到提高备份和恢复的效率,降低错误回滚压力(为了管理)
  2. 范围分区:将数据基于顺序范围映射到每一个分区,这个范围是你在创建分区时指定的分区键决定的。这种分区方式是最为常用的。
  3. 列表分区:把不同的列存到不同的分区中

(分区大家都一样,只不过用的分区键不同所以分为三类分区
第一个使用的分区键是哈希函数,
第二个使用的是行的范围,比如每十行作为分区键,
第三个使用的是列,但是分区键只能是一列)

四、如何选择分区键、选择原则是什么

本节也对应第三个考点:根据example选择partition key

哈希分区:根据分区键,可以快速找到记录,但对范围检索没有任何帮助。更接近于非数据驱动的循环分区,用于负载均衡,提高并发的能力

范围分区:比较常用,非常适合处理历史数据,例如按照时间划分。

列表分区:查询时,通常只查询某几个字段,或者,某几个字段通常一起被查询。但,每个分区都必须有主键,因此会造成冗余。

五、破例的原因

此处老师的原话是:要知道根据分区键选择什么分区,但是凡事都有破例的,那这个原因是啥

按什么字段进行分区要整体考虑,因为:更新分区键会引起移动数据,应该避免这么做

分区确实可以满足高速检索的需求,但是当某个数据库存在并发压力,有访问集中性的问题(高并发插入)的时候,过于细致的分区就会极大影响插入效率。此时就不可以根据显而易见的分区键来进行分区了。

image-20210417110407332

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值