ORACLE表分区

作者: wqh8384 | 来源:发表于2019-01-27 19:26 被阅读11次

一.表分区策略

1.识别大表

  采用ANALYZE TABLE语句进行分析,然后查询数据字典获得相应的数据量。

2.大表如何分区

可根据月份,季度以及年份等进行分区;

3.分区的表空间规划

要对每个表空间的大小进行估计

二.创建表分区

a.创建范围分区的关键字是'RANGE'

1.范围分区

create table ware_retail_part --创建一个描述商品零售的数据表

(

  id integer primary key,--销售编号

  retail_date date,--销售日期

  ware_name varchar2(50)--商品名称

)

partition by range(retail_date)

(

  --2011年第一个季度为part_01分区

  partition par_01 values less than(to_date('2011-04-01','yyyy-mm-dd')) tablespace TEMP01,

  --2011年第二个季度为part_02分区

  partition par_02 values less than(to_date('2011-07-01','yyyy-mm-dd')) tablespace TEMP01,

  --2011年第三个季度为part_03分区

  partition par_03 values less than(to_date('2011-10-01','yyyy-mm-dd')) tablespace TEMP01,

  --2011年第四个季度为part_04分区

  partition par_04 values less than(to_date('2012-01-01','yyyy-mm-dd')) tablespace TEMP01

);

2.创建散列分区

ORACLE表分区

3.组合分区:

ORACLE表分区

4.interval 分区

ORACLE表分区

三.创建索引分区

索引分区分为本地索引分区和全局索引分区,全局索引不反应基础表的结构,要分区只能进行范围分区。

创建索引分区要参照表分区

ORACLE表分区

四.分区技术简介

优点:

1.减少维护工作量

2.增强数据的可用性

3.均衡I/O,提升性能

4.提高查询速度

5.分区对用户保持透明,用户感觉不到分区的存在。

五,管理表分区

1.添加表分区

ORACLE表分区

ALTER TABLE...ALTER PARATITION

2.合并表分区

3.删除分区

ALTER TABLE...DROP PARTITION

删除分区时,里面的数据也会被删除。

-创建表和分区

create table sales--创建一个销售记录表

(

  id number primary key,--记录编号

  goodsname varchar2(10),--商品名

  saledate date--销售日期

)

partition by range(saledate)--按照日期分区

(

  --第一季度数据

  partition part_sea1 values less than(to_date('2011-04-01','yyyy-mm-dd')) tablespace tbsp_1,

  --第二季度数据

  partition part_sea2 values less than(to_date('2011-07-01','yyyy-mm-dd')) tablespace tbsp_2,

  --第三季度数据

  partition part_sea3 values less than(to_date('2011-10-01','yyyy-mm-dd')) tablespace tbsp_1,

  --第四季度数据

  partition part_sea4 values less than(to_date('2012-01-01','yyyy-mm-dd')) tablespace tbsp_2

);

--创建局部索引

create index index_3_4 on sales(saledate)

local(

partition part_seal tablespace tbsp_1,

partition part_sea2 tablespace tbsp_2,

partition part_sea3 tablespace tbsp_1,

partition part_sea4 tablespace tbsp_2

);

--并入分区

alter table sales merge partitions part_sea3,part_sea4 into partition part_sea4;

--重建局部索引

alter table sales modify partition part_sea4 rebuild unusable local indexes;

六.管理索引分区

删除索引:DROP PARTITION

重建分区:REBUILT PARTITION

更名索引分区:RENAME PARTITION

分割索引分区:SPLIT PARTITION

ORACLE表分区

相关文章

  • oracle与db2分区的区别

    ORACLE和DB2都引入了partition的概念.但是区别还是相当大的. ORACLE的分区是表的分区,每张表...

  • Oracle表分区

    Oracle 10g使用比较多的两种分区类型: (1)范围分区(range); (2)哈希分区(hash)。 (1...

  • ORACLE表分区

    一.表分区策略 1.识别大表 采用ANALYZE TABLE语句进行分析,然后查询数据字典获得相应的数据量。 ...

  • oracle分区表

    一、分区表理论知识 oracle的分区表可以包括多个分区,每个分区都是一个独立的段,存放到不同的表空间中,查询时可...

  • pg inherit

    借助表的继承特性PostgreSQL实现了分区表功能,虽然相比Oracle、MySQL的分区表来说其实现过程比较麻...

  • Oracle表分区操作

    搜索分区下的数据: 创建表分区 注意事项: partition by 分区类型(分区键) 范围分区:range可以...

  • Oracle分区表

    1.分区表概念当系统内数据量比较大的时候,访问性能就会急剧下降,直接影响到系统的性能问题。那么这个时候就要考虑使用...

  • oracle表分区和索引分区

    ㈠ 分区表技术概述 ㈡ 分区索引技术概述 ⑴ 本地前缀分区索引 适用场景:如果历史数据整理非常频繁、而且不能承受全...

  • java大数据量下的查询优化思路(管理平台)

    一、情景描述 数据库:oracle 表:分区表(按天分表),存在时间索引 数据量:整表内容...

  • Oracle按照分区查询和分区统计结果的组合展现

    Oracle中经常会用到分区查询,按分区查询时,只需要在表名后面通过PARTITION关键字和括号指定分区名字(不...

网友评论

    本文标题:ORACLE表分区

    本文链接:https://www.haomeiwen.com/subject/hgjnjqtx.html