博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle 数据库表分区
阅读量:5084 次
发布时间:2019-06-13

本文共 1589 字,大约阅读时间需要 5 分钟。

 oracle数据库表分区总结

 

一、基本概念

表空间:一个或多个数据文件的集合,所有数据对象(表)都存储在指定的表空间中。

分区表:当一个表中的数据量达到一定程度后,查询速度会变慢,影响应用的性能,此时可以考虑进行表分区,分区后逻辑上还是一张表,只是将数据在物理上存放到多个表空间,这样查询时不用每次都整表扫描。

 

二、表分区

(1)优点

  • 提高查询速度:对分区数据查询时,只用扫描该分区数据
  • 增强可用性:表的某些分区发生故障,不影响其他正常的分区数据使用
  • 方便维护管理:表的某些分区发生故障,只需对故障分区进行修复
  • 均衡I/O:可以把不同分区的数据映射到磁盘以平衡I/O

 

 (2) 方法

a、范围分区

将表数据通过某字段的数据范围进行分区,如根据时间进行分区等

1 CREATE TABLE CUSTOMER  2 (  3     CUSTOMER_ID NUMBER NOT NULL PRIMARY KEY,  4     FIRST_NAME  VARCHAR2(30) NOT NULL,  5     LAST_NAME   VARCHAR2(30) NOT NULL,  6     PHONE        VARCHAR2(15) NOT NULL,  7     EMAIL        VARCHAR2(80),  8     STATUS       CHAR(1)  9 ) 10 PARTITION BY RANGE (CUSTOMER_ID) 11 ( 12     PARTITION CUS_PART1 VALUES LESS THAN (100000) TABLESPACE CUS_TS01, 13     PARTITION CUS_PART2 VALUES LESS THAN (200000) TABLESPACE CUS_TS02 14 )

 

b、列表分区

该分区适用于表中某列只有少数的值的情况,如性别等

1 CREATE TABLE PROBLEM_TICKETS  2 (  3     PROBLEM_ID   NUMBER(7) NOT NULL PRIMARY KEY,  4     DESCRIPTION  VARCHAR2(2000),  5     CUSTOMER_ID  NUMBER(7) NOT NULL,  6     DATE_ENTERED DATE NOT NULL,  7     STATUS       VARCHAR2(20)  8 )  9 PARTITION BY LIST (STATUS) 10 ( 11       PARTITION PROB_ACTIVE   VALUES ('ACTIVE') TABLESPACE PROB_TS01, 12       PARTITION PROB_INACTIVE VALUES ('INACTIVE') TABLESPACE PROB_TS02 13 )

 

c、散列分区

该分区适用于当表中某列没有合适的条件时,使用散列算法决定数据放入哪一分区。

1 CREATE TABLE HASH_TABLE  2 (  3   COL NUMBER(8),  4   INF VARCHAR2(100)  5 )  6 PARTITION BY HASH (COL)  7 (  8   PARTITION PART01 TABLESPACE HASH_TS01,  9   PARTITION PART02 TABLESPACE HASH_TS02, 10   PARTITION PART03 TABLESPACE HASH_TS03 11 )

 

 

 

转载于:https://www.cnblogs.com/nox-np/p/9651408.html

你可能感兴趣的文章
滑行的窗口
查看>>
Dijkstra优先队列模板
查看>>
Java-JRE:JRE百科
查看>>
杂项:HTML5-2/3-新元素
查看>>
[20180814]校内模拟赛
查看>>
Note_3.31
查看>>
poj 2187 Beauty Contest 最远点距
查看>>
简单 PHP + MySQL 数据库动态网站制作 -- 摘抄
查看>>
HBuilder 云打包生成 .apk 文件所需的安卓证书如何获取以及文件打包前必须的设置...
查看>>
Hadoop学习之ZooKeeper理论知识和集群安装配置
查看>>
理解对象和对象的描述特性
查看>>
href="#"与href="javascript:void(0)"的区别
查看>>
转载 - Tarjan算法(求SCC)
查看>>
do {...} while (0) 的用途汇总(两篇文章)
查看>>
程序员面试一句话让HR面无人色
查看>>
第二冲刺阶段个人进度04
查看>>
关于【软件工程与计算机科学的区别】
查看>>
企业级负载平衡概述
查看>>
AJAX相关概念及应用
查看>>
MIT 6.828 Development Environment Setup
查看>>