日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle表分区设计_论oracle分区表的创建与维护

發布時間:2023/12/18 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle表分区设计_论oracle分区表的创建与维护 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

創建分區表:

oracle分區方法:range、hash、list和composite partition;

range分區表示例:

CREATE TABLE sales_range (salesman_id NUMBER(5), salesman_name VARCHAR2(30),

sales_amount NUMBER(10), sales_date DATE) COMPRESS PARTITION BY RANGE(sales_date)

(

PARTITION sales_jan2000 VALUES LESS THAN(TO_DATE('02/01/2000','DD/MM/YYYY')),

PARTITION sales_feb2000 VALUES LESS THAN(TO_DATE('03/01/2000','DD/MM/YYYY')),

PARTITION sales_mar2000 VALUES LESS THAN(TO_DATE('04/01/2000','DD/MM/YYYY')),

PARTITION sales_apr2000 VALUES LESS THAN(TO_DATE('05/01/2000','DD/MM/YYYY')));

分區字段values less than必須是確定值,最后一個可以是maxvalue,每個分區可以單獨指定物理屬性

range分區特點:

最早、最經典的分區方法

Range分區通過對分區字段值的范圍進行分區

Range分區特別適合于按時間周期進行數據的存儲:日、周、月、年等

數據管理能力強

數據遷移

數據備份

數據交換

范圍分區的數據可能不均勻

范圍分區與記錄值有關,實施難度和可維護性相對較差

hash分區表示例:

create table emp_t(empno integer,ename varchar2(20))

partition by hash(empno)

partitions 4;--指定分區所在表空間(partition part_01 tablespace test,partition part_02 tablespace sys);

list分區表示例:

CREATE TABLE sales_list (salesman_id NUMBER(5), salesman_name VARCHAR2(30),

sales_state VARCHAR2(20), sales_amount NUMBER(10), sales_date DATE)

PARTITION BY LIST(sales_state)

(

PARTITION sales_west VALUES('California', 'Hawaii'),

PARTITION sales_east VALUES ('New York', 'Virginia', 'Florida'),

PARTITION sales_central VALUES('Texas', 'Illinois'),

PARTITION sales_other VALUES(DEFAULT));

list分區特點:

List分區通過對分區字段的離散值進行分區

List分區是不排序的,而且分區之間也沒有關聯

List分區適合于對數據離散值進行控制

List分區只支持單個字段

List分區具有與range分區相似的優缺點:

數據管理能力強

各分區的數據可能不均勻

composite分區表示例:

CREATE TABLE quarterly_regional_sales (deptno NUMBER, item_no VARCHAR2(20),

txn_date DATE, txn_amount NUMBER, state VARCHAR2(2))

PARTITION BY RANGE (txn_date) SUBPARTITION BY LIST (state)

( PARTITION q1_1999 VALUES LESS THAN(TO_DATE('1-APR-1999','DD-MON-YYYY'))

(SUBPARTITION q1_1999_northwest VALUES ('OR', 'WA'),

SUBPARTITION q1_1999_southwest VALUES ('AZ', 'UT', 'NM'),

SUBPARTITION q1_1999_northeast VALUES ('NY', 'VM', 'NJ'),

SUBPARTITION q1_1999_southeast VALUES ('FL', 'GA'),

SUBPARTITION q1_1999_northcentral VALUES ('SD', 'WI'),

SUBPARTITION q1_1999_southcentral VALUES ('NM', 'TX')),

PARTITION q2_1999 VALUES LESS THAN(TO_DATE('1-JUL-1999','DD-MON-YYYY'))

(SUBPARTITION q2_1999_northwest VALUES ('OR', 'WA'),

SUBPARTITION q2_1999_southwest VALUES ('AZ', 'UT', 'NM'),

SUBPARTITION q2_1999_northeast VALUES ('NY', 'VM', 'NJ'),

SUBPARTITION q2_1999_southeast VALUES ('FL', 'GA'),

SUBPARTITION q2_1999_northcentral VALUES ('SD', 'WI'),

SUBPARTITION q2_1999_southcentral VALUES ('NM', 'TX')),

PARTITION q3_1999 VALUES LESS THAN (TO_DATE('1-OCT-1999','DD-MON-YYYY'))

(SUBPARTITION q3_1999_northwest VALUES ('OR', 'WA'),

… ….

SUBPARTITION q4_1999_northcentral VALUES ('SD', 'WI'),

SUBPARTITION q4_1999_southcentral VALUES ('NM', 'TX')));

composite分區特點:

Oracle支持的Composite分區:

range-hash

Range-list

既適合于歷史數據,又適合于數據均勻分布

與范圍分區一樣提高可用性和可管理性

更好的PDML和partition-wise joins特性

實現粒度更細的操作

支持符合local indexes

不支持符合 global indexes

分區表設計原則:

表的大小:當表的大小超過2GB,或對于OLTP系統,表記錄超過1000萬時,都應該考慮對表進行分區

數據訪問特性:基于表的大部分查詢應用,只訪問表中少量的數據。對于這樣的表進行分區,可充分利用分區排除無關數據查詢的特性

數據維護:按時間段刪除成批的數據,對于這樣的表需要考慮進行分區,以滿足維護需要

數據備份和恢復:按時間周期進行表空間備份時,將分區與表空間建立對應關系

只讀數據:如果一個表中大部分數據都是只讀,通過對表進行分區,可將只讀數據存儲在只讀表空間,對于數據的備份有利

OLAP并行數據操作

分區表及索引分區數據字典信息:

--1、查詢當前用戶下有哪些是分區表:

SELECT * FROM USER_PART_TABLES;

--2、查詢當前用戶下有哪些分區索引:

SELECT * FROM USER_PART_INDEXES;

--3、查詢當前用戶下分區索引的分區信息:

SELECT *

FROM USER_IND_PARTITIONS T

WHERE T.INDEX_NAME = ?

--4、查詢當前用戶下分區表的分區信息:

SELECT * FROM USER_TAB_PARTITIONS T WHERE T.TABLE_NAME = ?;

--5、查詢某分區下的數據量:

SELECT COUNT(*) FROM TABLE_PARTITION PARTITION(TAB_PARTOTION_01);

--6、查詢索引、表上在那些列上創建了分區:

SELECT * FROM USER_PART_KEY_COLUMNS;

--7、查詢某用戶下二級分區的信息(只有創建了二級分區才有數據):

SELECT * FROM USER_TAB_SUBPARTITIONS;

--查看某一分區上的數據

select * from user_table partition(partitionname);

分區表維護:

--刪除分區

ALTER TABLE table_name DROP PARTITION partition_name;

--說明:此語句不可用于hash分區表,如果是全局索引,因為全局索引的分區結構和表可以不一致,若不一致的情況下,會導致整個全局索引失效,在刪除分區的時候,語句修改為:

ALTER TABLE table_name DROP PARTITION partition_name UPDATE GLOBAL INDEXES;

--合并分區(coalesce partition):合并分區是用來操作HASH分區表和hash全局索引的,它會重新分配刪除的分區的數據到現有的分區中

ALTER TABLE table_name COALESCE PARTITION;

--合并分區和刪除中間的RANGE有點像,但是合并分區是不會刪除數據的,對于LIST、HASH分區也是和RANGE分區不一樣的,其語法為:

ALTER TABLE table_name MERGE PARTITIONS??? partition_name1,partition_name2 INTO PARTITION MERGED_PARTITION;

--創建新的分區(分區數據若不能提供范圍,則插入時會報錯,需要增加分區來擴大范圍)

ALTER TABLE table_name ADD PARTITION partition_name VALUES LESS THAN(2500000);--list分區or RANGE分區

ALTER TABLE table_name ADD PARTITION partition_name;--HASH分區

--創建子分區:在分區下創建新的子分區大致如下(RANGE分區,若為LIST或HASH分區,將創建方式修改為對應的方式即可)

ALTER TABLE MODIFY PARTITION ADD SUBPARTITION VALUES LESS THAN(....);

--修改分區名稱(修改相關的屬性信息):

ALTER TABLE TABLE_PARTITION RENAME PARTITION MERGED_PARTITION TO MERGED_PARTITION02;

--交換分區(快速交換數據,其實是交換段名稱指針),首先創建一個交換表,和原表結構相同,如果有數據,必須符合所交換對應分區的條件

CREATE TABLE TABLE_PARTITION_2

AS SELECT * FROM TABLE_PARTITION WHERE 1=2;

--然后將第一個分區的數據交換出去

ALTER TABLE TABLE_PARTITION EXCHANGE PARTITION TAB_PARTOTION_01

WITH TABLE TABLE_PARTITION_2 INCLUDING INDEXES;

--此時會發現第一個分區的數據和表TABLE_PARTITION_2做了瞬間交換,比TRUNCATE還要快,因為這個過程沒有進行數據轉存,只是段名稱的修改過程,和實際的數據量沒有關系。

--如果是子分區也可以與外部的表進行交換,只需要將關鍵字修改為:SUBPARTITION 即可。

--清空分區數據

ALTER TABLE TRUNCATE PARTITION ;

ALTER TABLE TRUNCATE subpartition ;

總結

以上是生活随笔為你收集整理的oracle表分区设计_论oracle分区表的创建与维护的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 香蕉视频黄色片 | 女人叫床高潮娇喘声录音mp3 | 少妇一级淫免费播放 | 国产一级视频在线播放 | jizz18欧美18 | 少妇一晚三次一区二区三区 | 免费福利视频在线观看 | 无码人妻aⅴ一区二区三区69岛 | 9l视频自拍蝌蚪9l视频成人 | 在办公室被c到呻吟的动态图 | 97视频久久 | 亚洲三级免费观看 | 男ji大巴进入女人视频 | 国产视频手机在线观看 | 久久九九国产 | 女人夜夜春| 亚洲欧洲综合 | 亚洲第一页夜 | 国产免费脚交足视频在线观看 | 欧美性猛交ⅹ乱大交3 | 99热国内精品 | 欧美成人精品在线观看 | 伊人久久超碰 | 黄色喷水视频 | 色欲av永久无码精品无码蜜桃 | 牛夜精品久久久久久久99黑人 | 国产精品第二十页 | 日本黄色成人 | 国产一区二区视频免费 | 99人妻少妇精品视频一区 | 国产无遮挡一区二区三区毛片日本 | 亚州av片 | 911精品国产一区二区在线 | 中文字幕人妻一区二区三区视频 | 不卡的av片| 欧美性精品 | 艳妇臀荡乳欲伦交换gif | 国产精品尤物视频 | 好吊视频在线观看 | 深爱激情综合网 | 日韩第一页在线观看 | av在线有码 | 色偷偷五月天 | 婷婷综合在线 | 久久夜色精品国产噜噜亚洲av | 亚洲高清在线观看视频 | 国产高清免费观看 | 精品一区二区三区在线免费观看 | 黄色网址在线播放 | 大伊人网| 国产精品成人免费精品自在线观看 | 日韩 欧美 中文 | av调教| 亚州国产 | 久久久7777 | 久久艹综合| 欧美亚洲国产一区 | 午夜性色福利视频 | 三上悠亚久久精品 | av色综合| 国产传媒精品 | 国产真实偷伦视频 | 中文字幕亚洲第一 | 国产综合无码一区二区色蜜蜜 | 欧美极品在线 | 国产在线看片 | 日本人妖在线 | 国产情侣露脸自拍 | 涩涩涩在线视频 | 又黄又免费的网站 | 黄色免费成人 | 欧美第一页浮力影院 | 欧美亚洲另类小说 | 超碰人人做 | 中文字幕av亚洲精品一部二部 | 成人综合精品 | 亚洲砖区区免费 | 日本视频网址 | 少妇人妻偷人精品一区二区 | 日本人妻熟妇久久久久久 | 高跟鞋av| 亚洲国产第一页 | 欧洲亚洲成人 | 香蕉视频黄在线观看 | 成年人免费高清视频 | 妞妞影视| 男生和女生一起差差差视频 | 在线aaa | 亚洲精品视频导航 | 91精品免费在线 | 伊人焦久影院 | 夜夜夜爽 | 极品少妇xxxx | 午夜激情av | 成人免费在线视频观看 | 在线观看av网页 | 午夜久久视频 | 亚洲色图插插插 | 免费成人电影在线观看 |