针对于数据库分区的使用

首先介绍一个数据库分区:数据库分区是一种物理数据库设计技术,DBA和数据库建模人员对其相当熟悉。虽然分区技术可以实现很多效果,但其主要目的是为了在特定的SQL操作中减少数据读写的总量以缩减响应时间。

*非分区表的缺点:数据的逻辑备份、查询产生了巨大的效率问题。

分区表的优点:当表中的数据量不断增大,查询数据的速度就会变慢,应用程序的性能就会下降,这时就应该考虑对表进行分区。表进行分区后,逻辑上表仍然是一张完整的表,只是将表中的数据在物理上存放到多个表空间(物理文件上),这样查询数据时,不至于每次都扫描整张表。*

  1. 范围分区
    *根据某一字段或者多个字段的值的范围来划分分区
    partition by range(表字段)(
    partition 分区表名 values less than(maxvalue 一个最大上限值,但是却小于且不等于这个值)tablespace 表空间名称 (需要设置一个表空间)
    )*

  2. 散列分区
    *根据字段的hash值进行均匀分布,尽可能的实现各分区所散列的数据相等。
    partition by hash(表字段)(
    partition p1 tablespace USERS,
    partition p2 tablespace USERS,
    partition p3 tablespace USERS
    ) *

  3. 列表分区
    *指定了根据某字段的某个具体值进行分区
    partition by list(表字段)(
    partition p1 values(指定的一个值) tablespace USERS,
    partition p2 values(指定的一个值) tablespace USERS,
    partition p3 values(指定的一个值) tablespace USERS,
    )*

  4. 范围 - 散列分区
    *partition by range(字段值)
    subpartition by hash(字段值,可以多个来划分)(
    partition p1 values less than(上限值)(
    subpartition pc1 tablespace USERS ,
    subpartition pc2 tablespace USERS
    ),
    partition p2 values less than(上限值)(
    subpartition pcc1 tablespace USERS,
    subpartition pcc2 tablespace USERS
    )
    )*

  5. 范围 - 列表分区
    *partition by range(参数)
    subpartition by list(可以精确定位的参数,或者基数小,无法创建多个)
    (
    partition pc1 values less than(上限值)(
    subpartition pccc1 values(精确稳定的值);
    )
    )*

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值