ORACLE 分區(qū)表的設(shè)計(jì)建站知識(shí)
導(dǎo)讀:1建站知識(shí)分區(qū)致力于解決支持極大表和索引的關(guān)鍵問(wèn)題。它采用他們分解成較小和易于管理的稱為分區(qū)的片(piece)的方法。高端網(wǎng)站建設(shè)seo網(wǎng)站優(yōu)化軟件。
分區(qū)表的概念 分區(qū)致力于解決支持極大表和索引的關(guān)鍵問(wèn)題。它采用他們分解成較小和易于管理的稱為分區(qū)的片(piece)的方法。一旦分區(qū)被定義,SQL語(yǔ)句就可以訪問(wèn)的操作某一個(gè)分區(qū)而不是整個(gè)表,因而提高管理的效率。分區(qū)對(duì)于數(shù)據(jù)倉(cāng)庫(kù)應(yīng)用程序非常有效,因?yàn)樗麄兂34鎯?chǔ)和分析巨量的歷史數(shù)據(jù)。 分區(qū)表的分類 網(wǎng)站建設(shè)公司Range partitioning(范圍分區(qū)) Hash partitioning(哈希分區(qū)) List partitioning(列表分區(qū)) Composite range-hash partitioning(范圍-哈希組合分區(qū)) Composite range-list partitioning(范圍-列表組合分區(qū)) 何時(shí)選擇范圍分區(qū) 必須可以將表的記錄按照某一列值的范圍進(jìn)行劃分。你想處理一些數(shù)據(jù),這些數(shù)據(jù)經(jīng)常是屬于某一個(gè)范圍內(nèi),例如月份。如果數(shù)據(jù)能夠按照分區(qū)的范圍均勻分布的話,那會(huì)獲得最佳性能。如果數(shù)據(jù)分布很不均勻的話,你可能不得不選擇其他分區(qū)方式。 CREATE TABLE sales ( invoice_no NUMBER, sale_year INT NOT NULL, sale_month INT NOT NULL, sale_day INT NOT NULL ) PARTITION BY RANGE (sale_year, sale_month, sale_day) ( PARTITION sales_q1 VALUES LESS THAN (1999, 04, 01) TABLESPACE tsa, PARTITION sales_q2 VALUES LESS THAN (1999, 07, 01) TABLESPACE tsb, PARTITION sales_q3 VALUES LESS THAN (1999, 10, 01) TABLESPACE tsc, PARTITION sales_q4 VALUES LESS THAN (2000, 01, 01) TABLESPACE tsd ); 何時(shí)選擇HASH分區(qū) 如果數(shù)據(jù)不容易用范圍分區(qū),但你想提升性能和表的易管理性。 Hash分區(qū)提供了一個(gè)在指定數(shù)量的分區(qū)內(nèi)交叉均勻分布數(shù)據(jù)的方法。行根據(jù)分區(qū)鍵的hash值映射到相應(yīng)分區(qū)中。創(chuàng)建和使用hash分區(qū)你可以靈活放置數(shù)據(jù),可以通過(guò)交叉訪問(wèn)在不同I/O設(shè)備上的分區(qū)提升性能。 CREATE TABLE scubagear (id NUMBER, name VARCHAR2 (60)) PARTITION BY HAS網(wǎng)站推廣優(yōu)化seoH (id) PARTITIONS 4 STORE IN (gear1, gear2, gear3, gear4); 何時(shí)選擇列表分區(qū) 使用LIST分區(qū)你可以直接控制某些數(shù)據(jù)映射到某些分區(qū)。你可以為某個(gè)分區(qū)指定不連續(xù)的分區(qū)鍵值。這不同于RANGE分區(qū)(用鍵值的范圍劃分分區(qū)),也不同于HASH分區(qū)(不能控制某行映射到哪個(gè)分區(qū))。 CREATE TABLE q1_sales_by_region (deptno number, deptname varchar2(20), quarterly_sales number(10, 2), state varchar2(2)) PARTITION BY LIST (state) (PARTITION q1_northwest VALUES ('OR', 'WA'), PARTITION q1_southwest VALUES ('AZ', 'UT', 'NM'), PARTITION q1_northeast VALUES ('NY', 'VM', 'NJ'), PARTITION q1_southeast VALUES ('FL', 'GA'), PARTITION q1_northcentral VALUES ('SD', 'WI'), PARTITION q1_so營(yíng)銷型網(wǎng)站建設(shè)uthcentral VALUES ('OK', 'TX')); 分區(qū)表的設(shè)計(jì) 如何選擇分區(qū)的類型,如何選擇分區(qū)的列呢?在這之前你必須明確你的目的——易管理性和性能,你更注重哪個(gè)方面?分區(qū)表所影響的方面可以歸類為以下幾種:性能、易管理性、數(shù)據(jù)清理。 下面分別說(shuō)說(shuō)分區(qū)表對(duì)每一項(xiàng)的具體影響, 性能: 這一般是分區(qū)的主要目的。分區(qū)將大表變成了小表,當(dāng)where之后的條件體現(xiàn)分區(qū)字段的具體值時(shí),避免了全表掃描。 易于管理: 對(duì)于包含海量數(shù)據(jù)的大表,分區(qū)帶來(lái)的易于管理性是非常明顯的。當(dāng)你建議一個(gè)基于非分區(qū)表的索引時(shí),唯一的選擇就是創(chuàng)建整個(gè)索引。如果表被分區(qū),你就可以根據(jù)分區(qū)并行為此表創(chuàng)建索引,例如: alter index par_ind_01 reuild partition yy05; 除此之外你還可以同時(shí)的做很多事情,像改變表所在表空間、導(dǎo)出表,刪除表數(shù)據(jù)等等。 數(shù)據(jù)清理: 我們經(jīng)常會(huì)需要?jiǎng)h除表的一些歷史數(shù)據(jù),一般做法是delete,但是這會(huì)導(dǎo)致undo和redo的信息快速增長(zhǎng),而且影響數(shù)據(jù)庫(kù)整體性能。這時(shí)我們就可以利用drop某個(gè)分區(qū)來(lái)完成此任務(wù),例如: alter table tab_a drop partition yy01; 當(dāng)一個(gè)表的分區(qū)被刪除,對(duì)應(yīng)的local索引也同時(shí)被刪除。如果還存在著global索引,那么它會(huì)變成unusable狀態(tài)。為了避免此事情的發(fā)生,你可以使用: alter table tab_a drop partition yy01 update global indexes;相關(guān)高端網(wǎng)站建設(shè)seo網(wǎng)站優(yōu)化軟件。
聲明: 本文由我的SEOUC技術(shù)文章主頁(yè)發(fā)布于:2023-05-22 ,文章ORACLE 分區(qū)表的設(shè)計(jì)建站知識(shí)主要講述分區(qū)表,標(biāo)簽,ORACLE 分區(qū)表的設(shè)計(jì)建站知識(shí)1網(wǎng)站建設(shè)源碼以及服務(wù)器配置搭建相關(guān)技術(shù)文章。轉(zhuǎn)載請(qǐng)保留鏈接: http://www.bifwcx.com/article/web_5150.html
為你推薦與ORACLE 分區(qū)表的設(shè)計(jì)建站知識(shí)相關(guān)的文章
-
通王TWCMS 2.0.3網(wǎng)站模板程序下載
(126)人喜歡 2024-01-15 -
Windows官方原版在哪里下載
(175)人喜歡 2024-01-15 -
WordPress網(wǎng)站模板發(fā)帖標(biāo)題顏色設(shè)置
(131)人喜歡 2024-01-07 -
修改discuz論壇帖子標(biāo)題80字符的長(zhǎng)度限制
(249)人喜歡 2024-01-07 -
wordpress程序調(diào)用不帶超鏈接的Tag標(biāo)簽
(234)人喜歡 2024-01-05 -
網(wǎng)站在不同時(shí)期需調(diào)整內(nèi)容更新的方向
(112)人喜歡 2023-08-12