真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

分而治之:Oracle18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐-創(chuàng)新互聯(lián)

本文根據(jù)楊廷琨2018年5月11日在【第九屆中國數(shù)據(jù)庫技術(shù)大會(huì)】上的演講內(nèi)容整理而成。

創(chuàng)新互聯(lián)專注于企業(yè)營銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、坪山網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5、成都商城網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為坪山等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

  講師介紹:

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  楊廷琨,高級(jí)咨詢顧問, ITPUB Oracle 數(shù)據(jù)庫管理版版主 ,人稱“楊長老”,十?dāng)?shù)年如一日?qǐng)?jiān)持進(jìn)行Oracle技術(shù)研究與寫作,號(hào)稱“Oracle的百科全書”。迄今已經(jīng)在自己的博客上發(fā)表了超過3000篇技術(shù)文章。2010年,與 Eygle 共同主編出版了《Oracle DBA手記》一書,2007年被 Oracle 公司授予ACE 稱號(hào)。

  分享大綱:

  ·分區(qū)基本概念

  ·分區(qū)演進(jìn)歷史

  ·分區(qū)最佳實(shí)踐

  ·分區(qū)最新特性

  正文演講:

  很高興,又和大家重聚在DTCC 2018的數(shù)據(jù)庫性能優(yōu)化專場。這次我想和大家分享與分區(qū)相關(guān)的優(yōu)化特性,主要會(huì)和大家介紹一些Oracle最新的分區(qū)技術(shù)以及我們在日常運(yùn)營中的最佳實(shí)踐。

  一.分區(qū)基本概念

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  Oracle對(duì)于分區(qū)的定義是根據(jù)內(nèi)部定義的規(guī)則,將一張表的數(shù)據(jù)拆分到多個(gè)數(shù)據(jù)段中。分區(qū)之后,每個(gè)分區(qū)都是獨(dú)立的數(shù)據(jù)段。Oracle分區(qū)的大好處是透明性,應(yīng)用無需了解底層數(shù)據(jù),訪問方式也與之前無異。換句話說,當(dāng)把表做成分區(qū)表之后,程序不做任何的修改調(diào)整就可以直接跑,同樣如果把分區(qū)表改回普通表,也不要做任何調(diào)整。但是,這并不意味著做了應(yīng)用之后我們就不需要了解表是否進(jìn)行了分區(qū)。如果你想要分區(qū)帶來額外的性能好處,那么分區(qū)策略一定是要和應(yīng)用程序、業(yè)務(wù)訪問方式相結(jié)合。

  Oracle提供了幾種分區(qū)的訪問方式,最常用直觀的方式是通過分區(qū)擴(kuò)展語句直接指定到某個(gè)分區(qū)。但我們不推薦這種方式,我們更推薦的方式是通過真正控制訪問數(shù)據(jù)、增加規(guī)范條件,讓Oracle幫你定位到需要訪問的某些數(shù)據(jù)。

  分區(qū)的好處是什么?原來所有的操作都是基于一張大表去做的,而分區(qū)之后,一張大表化成了多個(gè)小單元,我們可以基于這種小單元去做刪除、截?cái)?、遷移、索引等操作,分區(qū)提供了很好的細(xì)粒度操作手段。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  提到分區(qū),很多人第一反應(yīng)是它帶來的性能優(yōu)勢,但其實(shí)我認(rèn)為分區(qū)大的優(yōu)勢是在可管理性和可維護(hù)性方面,管理很多小表或者小數(shù)據(jù)段的成本要遠(yuǎn)低于管理一張大表,而且平均維護(hù)時(shí)間也會(huì)變少,但速度卻會(huì)更快。

  第二個(gè)好處是可用性的增強(qiáng),這也是Oracle官方宣稱的好處。原來,如果一張表對(duì)應(yīng)的某個(gè)數(shù)據(jù)文件出現(xiàn)問題,影響的是整個(gè)全表,但現(xiàn)在可能影響的只是其中一個(gè)分區(qū),因?yàn)樗谶壿嬌鲜窍喔綦x的。

  基于以上兩點(diǎn),我們才能開始講性能的提升。在早期的版本中,Oracle只是直接說性能有一定提升,但其實(shí)這種說法是不準(zhǔn)確的,因?yàn)榉謪^(qū)如果設(shè)計(jì)不好,你的性能是會(huì)下降的。后來Oracle自身也意識(shí)到了,所以從Oracle 11版本之后,Oracle就把性能拆成了OLTP和OLAP兩種不同的情況去考慮。

  OLTP處理的更多的是短時(shí)間內(nèi)的大量并發(fā),所以這時(shí)分區(qū)能帶來的好處是降低共享資源的爭用,消除熱點(diǎn)塊;OLAP面臨的是海量數(shù)據(jù)的處理,所以我們要更好的利用并行來提升性能。

  二.Oracle分區(qū)演進(jìn)歷史

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  Oracle最早是從版本 8引進(jìn)分區(qū)的,上圖這張表給大家列出了各個(gè)版本的分區(qū)功能,并通過功能、性能和管理性三個(gè)角度解讀。很多人雖然在用分區(qū),但是據(jù)我了解他們應(yīng)用的很多特性都還集中在8、9版本,例如常用的范圍分區(qū)、歷史分區(qū)、列表分區(qū)等等功能。但其實(shí)之后的版本中,Oracle一直都有很多更好更新的功能提供給我們。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  Oracle 12和18c中新增了很多非常實(shí)用的新功能,極大的簡化了大家的日常操作,接下來我會(huì)著重為大家介紹這些功能。

  三.分區(qū)最佳實(shí)踐

  接下來,我們介紹一下分區(qū)的最佳使用場景。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  范圍分區(qū)的最佳使用場景是針對(duì)具有天然時(shí)間屬性的數(shù)據(jù)。例如,系統(tǒng)里記錄的訂單時(shí)間、生成時(shí)間、啟動(dòng)時(shí)間等等。當(dāng)然并不是只要有時(shí)間屬性數(shù)據(jù)就可以用范圍分區(qū),還要看業(yè)務(wù)對(duì)時(shí)間是否有可見性的要求。另外,業(yè)務(wù)如果更關(guān)心近期數(shù)據(jù)就再好不過了,這樣范圍分區(qū)對(duì)性能提升以及過期歷史數(shù)據(jù)清理都會(huì)是很好的幫助。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  隨著數(shù)據(jù)的不斷積累,我們都會(huì)擔(dān)心數(shù)據(jù)庫越來越大。如果業(yè)務(wù)對(duì)于數(shù)據(jù)的生命周期有明確要求的話,那么我們可以通過清理數(shù)據(jù)來讓現(xiàn)有系統(tǒng)維持在一個(gè)相對(duì)穩(wěn)定的狀態(tài)。

  如何去清理數(shù)據(jù)呢?傳統(tǒng)的Delete數(shù)據(jù)清理會(huì)面臨很多問題,例如效率低下、無法釋放空間等等。但如果我們的數(shù)據(jù)存儲(chǔ)有一個(gè)明確的時(shí)間限定條件,那么分區(qū)就是一個(gè)很好的選擇。

  分區(qū)的清理成本和速度都很值得期待。在清理數(shù)據(jù)時(shí),我們建議盡可能建立全局索引。數(shù)據(jù)清除操作是會(huì)影響全局索引的使用度,甚至導(dǎo)致索引失效。但如果我們是定期做分區(qū)數(shù)據(jù)清理的話,那么就不會(huì)影響全局索引的作用。

  范圍分區(qū)的好處是什么呢?首先,數(shù)據(jù)分布是相對(duì)平均的,因?yàn)槭前凑諘r(shí)間等分的,數(shù)量也是可控的;通過DDL清理數(shù)據(jù)的速度很快,不會(huì)產(chǎn)生大量redo、undo的問題。同時(shí),在設(shè)計(jì)時(shí)還要考慮盡量讓一個(gè)查詢集中在一個(gè)分區(qū)中完成,提升查詢效率。通過定期DDL方式清理分區(qū),可以保證分區(qū)、表的大小維持在穩(wěn)定的量級(jí),同時(shí)索引也不會(huì)隨著時(shí)間迅速增長。

  剛才我們介紹了范圍分區(qū)是最常用的清理過期數(shù)據(jù)的方式,但是在真正的產(chǎn)品環(huán)境中,我們會(huì)面臨各種不同的場景。例如,我們不能把所有數(shù)據(jù)都簡單的刪掉,因?yàn)閯h除的數(shù)據(jù)中可能有少量的數(shù)據(jù)是需要保留的。

  面對(duì)這樣的場景,如果使用Delete方式去刪除,你會(huì)發(fā)現(xiàn)雖然我們使用了分區(qū),但是卻沒有享受到分區(qū)的好處。而且數(shù)據(jù)清理使用了原來的方式,那么必然會(huì)碰到原來的問題。

  那我們有沒有更好的解決辦法呢?我們可以用Insert+Exchange的方式來做,我先把這部分?jǐn)?shù)據(jù)從表中刪掉,如果這其中有少量需要的數(shù)據(jù),再插回來就可以了。這種方式既保證了效率,也避免了遇到之前的問題。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  上圖是我通過代碼簡單的給大家演示一下整個(gè)過程。

  這里有一張T_PART表和P(3)分區(qū),假設(shè)這其中有七八千條數(shù)據(jù)都是不重要的,但其中可能需要保留30條數(shù)據(jù),那么我就會(huì)采用之前提到的Insert+Exchange方式。這里還有一個(gè)小竅門,我們是先Insert,再Exchange。為什么這樣做,如果這張表一致性非常重要,我們就要在操作之前,先把這張表鎖起來,避免別人對(duì)它進(jìn)行操作,然后把需要保留的數(shù)據(jù)Insert到一張臨時(shí)表中,之后再去做Exchange。通過這種方式我們可以時(shí)刻保持?jǐn)?shù)據(jù)的一致性。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  除了上面的挑戰(zhàn),我們可能還會(huì)面臨主子表的挑戰(zhàn)。假設(shè)我的主表和子表都做了分區(qū),那我們可能會(huì)面臨以下挑戰(zhàn),首先子表可能不存在主表的分區(qū)時(shí)間列,例如,有訂單表和訂單詳細(xì)表兩個(gè)表,并且兩者是主子表關(guān)系。其中訂單表是以訂單時(shí)間來分區(qū)的,這時(shí)訂單詳細(xì)表的分區(qū)時(shí)間列就會(huì)產(chǎn)生爭議,如果是按照訂單明細(xì)的創(chuàng)建時(shí)間,那么它和訂單時(shí)間可能是不一致的,且二者本身就是一對(duì)多的關(guān)系,所以在數(shù)據(jù)清理的時(shí)候,可能主表清理不了,如果要用訂單時(shí)間去分區(qū),那么你就需要在表中冗余訂單時(shí)間。

  如果只是冗余訂單時(shí)間,相信很多人都是可以接受的,但是挑戰(zhàn)還不止于此,一旦有了外健約束,主表無法執(zhí)行truncate操作,必須先將約束disable掉,給運(yùn)維增加很多不便。

  如何解決這個(gè)問題?Oracle 11g就給我們提供了一個(gè)新功能叫參考分區(qū),它是這么解決的:主表的字段還是按照主表時(shí)間列去分區(qū),但子表不再需要冗余主表字段,而是直接依賴與主表的主外鍵關(guān)系去做分區(qū)。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  參考分區(qū)適用于主子表建立相同的數(shù)據(jù)策略,同時(shí)子表沒有合適的分區(qū)字段,且主子表經(jīng)常關(guān)聯(lián)訪問的場景。另外,Oracle 12還對(duì)此做了增強(qiáng),支持級(jí)聯(lián),換句話說,當(dāng)我有主子表的情況時(shí),不用先去子表做truncate,直接在主表做truncate,它就會(huì)遞歸的把所有子表truncate。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  哈希分區(qū)相對(duì)來說比較簡單,它的適用場景是沒有時(shí)間屬性、缺少區(qū)分?jǐn)?shù)據(jù)的業(yè)務(wù)字段的場景。如果系統(tǒng)面臨著共享資源的爭用,也可以使用哈希分區(qū)。

  我建議哈希分區(qū)鍵值列盡量選擇重復(fù)度不高的字段,這樣不容易導(dǎo)致數(shù)據(jù)分布不均;分區(qū)數(shù)量最好是2的冪次方,這也是為了避免分區(qū)數(shù)量分布不均;針對(duì)沒有時(shí)間屬性和明確業(yè)務(wù)屬性的表,通常不會(huì)去做定期清理的策略,我更建議使用全局索引;另外,哈希分區(qū)索引可以有效的解決索引熱點(diǎn)塊的問題。

  有人可能會(huì)有這樣的疑問,既然我的數(shù)據(jù)沒有業(yè)務(wù)特點(diǎn),為什么要分區(qū)呢?我們之前碰到過這樣一個(gè)案例,客戶的表量級(jí)非常大,400T的數(shù)據(jù)可能有395T的數(shù)據(jù)都在同一張表中 ,客戶面臨的問題是表可能存不下這么多數(shù)據(jù),Oracle對(duì)于表容量沒有限制,但是對(duì)于表空間的容量是有限制的,這時(shí)你會(huì)發(fā)現(xiàn)如果不用分區(qū),這個(gè)問題就是無解的。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  哈希分區(qū)可以解決的一個(gè)問題是熱點(diǎn)塊問題。為什么會(huì)產(chǎn)生熱點(diǎn)塊問題呢?對(duì)于OLTP系統(tǒng)來說,會(huì)有大量的數(shù)據(jù)插入。插入數(shù)據(jù)的類型一般有兩種,一種是主鍵,另一種是時(shí)間類。這兩組數(shù)據(jù)的共同點(diǎn)是新插的數(shù)據(jù)永遠(yuǎn)是大的,當(dāng)多人同時(shí)做插入時(shí),因?yàn)楸硎菬o序的,所以沒有影響,但索引是有序的,所以更新索引時(shí)會(huì)產(chǎn)生資源爭用。如果你是RAC架構(gòu),由于GC多節(jié)點(diǎn)之間的相互爭用,會(huì)導(dǎo)致熱點(diǎn)塊問題進(jìn)一步加劇。

  傳統(tǒng)的解決方案是利用Oracle提供的逆鍵索引,把鍵值反過來,分散熱點(diǎn)塊。但逆鍵索引有一個(gè)很大的缺點(diǎn),就是它雖然可以解決熱點(diǎn)問題,但卻不支持范圍掃描。

  哈希分區(qū)如何解決呢?我們創(chuàng)建索引,指定索引按照哈希方式分區(qū),然后指定分區(qū)數(shù)量。這樣做的好處是什么呢?原來我是一個(gè)索引,只有一個(gè)最高值,大家都去爭搶這一個(gè)最高值,但是現(xiàn)在我變成了32個(gè)分區(qū),有32個(gè)索引最高值,這時(shí)的資源爭搶就會(huì)少很多。當(dāng)然,技術(shù)都是有兩面性的,在這種情況下,你再做索引范圍掃描時(shí),就不只是要掃一棵索引樹,而是32棵索引樹,引入的額外開銷就會(huì)大許多。所以分區(qū)數(shù)量的選擇也是十分有講究的。

  列表分區(qū)最常見的是針對(duì)有某些業(yè)務(wù)屬性數(shù)據(jù)的場景。我們可以根據(jù)明確的業(yè)務(wù)特點(diǎn)去做分區(qū)。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  地區(qū)字段是列表分區(qū)常見的候選鍵值列,數(shù)據(jù)分布和訪問方式確定分區(qū)鍵值劃分,同時(shí)我還建議設(shè)定一個(gè)DEFAULT分區(qū),假設(shè),我們把國內(nèi)的大部分省到列出來了,但是有一天有個(gè)沒有對(duì)應(yīng)分區(qū)的省的數(shù)據(jù)進(jìn)來了,如果沒有DEFAULT分區(qū)就會(huì)直接報(bào)錯(cuò),而有了這個(gè)分區(qū),數(shù)據(jù)就有容身之所了。

  列表分區(qū)與業(yè)務(wù)的匹配度更好,業(yè)務(wù)可以清楚的知道數(shù)據(jù)存在哪里,并且高效的找到,不用太多的使用Oracle內(nèi)部的關(guān)聯(lián)和查詢。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  常見的索引有兩種,一種是全局索引,一種是本地索引。分區(qū)的全局索引和單表上的索引沒有區(qū)別,不管表上有多少個(gè)分區(qū),只有一棵索引樹,所有的數(shù)據(jù)來自分區(qū)。這樣做的好處了,即使表做了分區(qū),訪問代價(jià)也不會(huì)增加,但缺點(diǎn)是如果你對(duì)下面的分區(qū)表做了一些DDL操作,那么很容易導(dǎo)致索引失效。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  本地索引和表分區(qū)是一一對(duì)應(yīng)的關(guān)系,當(dāng)你在對(duì)表做數(shù)據(jù)操作時(shí),Oracle同時(shí)也會(huì)對(duì)索引分區(qū)做操作,不會(huì)導(dǎo)致分區(qū)索引的不可用,同時(shí)本地索引還支持并行掃描和創(chuàng)建。

  本地索引的缺點(diǎn)是如果你要把主鍵創(chuàng)建成本地索引,那么主鍵必須包含在索引里面,而且無法保證每棵獨(dú)立的索引樹之間的數(shù)據(jù)一致性,所以必須把鍵值列加入其中來保證唯一性,但是這樣未限定分區(qū)的查詢將掃描全部索引分區(qū),這會(huì)增加額外的開銷。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  最后,我們看一下用來消除熱點(diǎn)塊的哈希分區(qū)索引,索引雖然也會(huì)做分區(qū),但是與表數(shù)據(jù)沒有任何關(guān)聯(lián)關(guān)系,任何一個(gè)索引分區(qū)都可以去訪問所有的表,它的優(yōu)勢就是分散熱點(diǎn)。但缺點(diǎn)是訪問索引時(shí)需要訪問索引的每個(gè)分區(qū)才能得到完整記錄。

  四.分區(qū)最新特性

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  Oracle 12提供了很多新特性,這些新特性對(duì)于日常維護(hù)是非常有價(jià)值的,所以我們來為大家詳細(xì)介紹一下。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  首先,我們來介紹部分分區(qū)。剛才我們講到常用的索引有兩種,全局索引和本地索引,那么部分分區(qū)的索引是什么呢?在實(shí)際環(huán)境中,我沒必要對(duì)所有分區(qū)都創(chuàng)建索引,很多歷史數(shù)據(jù)分區(qū)的訪問頻度是非常小的,沒有必要關(guān)注,部分分區(qū)索引剛好滿足這樣的應(yīng)用場景,它可以把索引范圍壓縮到一個(gè)合理范圍內(nèi)。

  假設(shè)創(chuàng)建了一張分區(qū)表,里面有9個(gè)分區(qū),分別存儲(chǔ)了17年和18年的數(shù)據(jù),其中存儲(chǔ)17年數(shù)據(jù)的四個(gè)分區(qū)我們做了INDEX OFF操作,在創(chuàng)建索引時(shí),我們會(huì)發(fā)現(xiàn)雖然創(chuàng)建了9個(gè)索引段,但做了操作的四個(gè)分區(qū)是不可用的,實(shí)際只創(chuàng)建了5個(gè)索引段。

  當(dāng)你訪問部分分區(qū)索引時(shí),它會(huì)直接把執(zhí)行計(jì)劃分成兩部分,一部分是在索引段里掃描,還有一部分是在對(duì)應(yīng)內(nèi)容里掃描。部分分區(qū)索引其實(shí)大的改變是它可以分辨哪些索引是可用的,哪些是不可用的。

  如果在指定鍵值的同時(shí)再加上一個(gè)時(shí)間,那這個(gè)時(shí)間就是我們分區(qū)線。當(dāng)我們訪問數(shù)據(jù)時(shí),Oracle就可以根據(jù)時(shí)間知道我要訪問哪個(gè)區(qū),其它無需訪問的區(qū)雖然也是有數(shù)據(jù)的,但Oracle會(huì)在這里有個(gè)設(shè)置恒為假條件的filter,當(dāng)訪問到這里時(shí)會(huì)直接跳到下一部分。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  Oracle 12.1非常強(qiáng)大的一個(gè)功能點(diǎn)是索引異步維護(hù)。當(dāng)創(chuàng)建范圍分區(qū)時(shí),由于經(jīng)常要做DDL的清理,所以不建議大家去建全局索引。但是Oracle 12解決了這個(gè)問題,假設(shè)1月4日對(duì)應(yīng)數(shù)據(jù)分區(qū)里有31萬條記錄,3月5日對(duì)應(yīng)的數(shù)據(jù)分區(qū)有近30萬條記錄,當(dāng)我們?nèi)プ鰟?chuàng)建分區(qū)操作時(shí),花費(fèi)時(shí)間大約為0.18秒,然后再檢查狀態(tài)時(shí),不出意外,全局索引已經(jīng)失效了。重建之后,我們在分區(qū)創(chuàng)建時(shí)加上一個(gè)Update Index的操作,因?yàn)橐紻DL操作,它會(huì)更新所有狀態(tài),很多人認(rèn)為它會(huì)變得非常慢,其實(shí)它只用了0.17秒,比之前的0.18秒還要快。這是因?yàn)镺racle 12之后,它會(huì)自動(dòng)給數(shù)據(jù)打標(biāo)識(shí),并不是真正同步去維護(hù),而是在后臺(tái)異步維護(hù),不僅提高了索引的可用性,同時(shí)還提高了效率。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  Oracle 12.2很有意思的一個(gè)特性是自動(dòng)列表分區(qū),我們之前建議在列表分區(qū)時(shí)一定要加上DEFAULT值,否則數(shù)據(jù)插入會(huì)報(bào)錯(cuò),尤其是當(dāng)一張表只有一個(gè)Keyboard,在自動(dòng)列表分區(qū)中插入數(shù)據(jù)是非常困難的。而Oracle提供的很方便的功能是在線把一張普通表轉(zhuǎn)換成分區(qū)表,這樣我就不會(huì)因?yàn)槭欠謪^(qū)表而引入停機(jī)、維護(hù)等。

  Oracle 18c中針對(duì)這種情況提供了更強(qiáng)的改變,例如我創(chuàng)建了一個(gè)分區(qū)表和三個(gè)索引,當(dāng)我從普通表變成分區(qū)表之后,但我對(duì)分區(qū)表策略不滿意,可以直接通過Oracle語句來改變數(shù)據(jù)表策略,而且這個(gè)操作可以在DDL發(fā)生時(shí)在線去做。

分而治之:Oracle 18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐

  最后一個(gè)功能是針對(duì)變更之后的索引,我們可以在線去做分區(qū)的MERGE操作,通過在線的方式把其中幾個(gè)分區(qū)合并。


當(dāng)前文章:分而治之:Oracle18c及12.2分區(qū)新特性的N種優(yōu)化實(shí)踐-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://weahome.cn/article/cccoie.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部