Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

資料和雲發表於2018-11-26

編輯說明:在剛剛落幕的第八屆資料技術嘉年華大會現場,我們正式釋出了『Oracle 18c體系架構』,應廣大網友的呼籲,特別向不能到場的朋友放送

自2012年的Oracle 11g體系架構圖開始,已經連續釋出了四個版本。而我很榮幸,作為12.2版本和18c版本的設計師,今天跟大家分享一下我個人在設計和繪製圖的過程中的一些體會,也跟大家一起聊聊18c中最核心的變化和技術點。

除了前期的時候採用手繪圖的方式,整個海報的設計基本上是採用OneNote來完成的。以下是設計稿的一個版本。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

12.2從開始讀文件儲備知識到最後繪製出完整的圖經歷了4個月時間,完成了上百個新特性和模組的設計,18c的新特性相對較少,但是從傳統資料庫跨域到自治資料庫,其中的新特性更細緻專業,這也引導我在畫圖的時候更關注細節,也經歷兩個月的查閱和設計才完成。

海報所包含的新特性的維度有:功能模組、元件、關聯關係、程式、演算法、核心儲存。針對每一個新特性,都會從以上維度做深入分析,並最終落在紙上,將技術的精美與藝術的優雅結合為一體。 

【技術篇】Oracle18c的神祕和真實

揭開自動駕駛的神祕面紗,首先我們從Oracle資料庫的生命週期表中可以看出,18c並不意味著跟以前我們所熟知的11g 12c有天壤之別。事實上,18c在Oracle的產品體系中的真實身份是 Oracle12.2.0.2.  之所以這樣改,一方面是為了避開13,另外一方面剛好從2018年開始,Oracle也開始走向了每年一更新這種小步快跑的研發方式。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

每一個熟悉 Oracle的人都知道,Oracle每一次薄發,都來源於多年的厚積。本次從12.2.0.1到12.2.0.2(18c)的版本,雖然從開始到推向市場只用了一個季度的時間,卻實現了資料庫從自動管理到自動駕駛的質的飛躍。

我們挑選了最核心的40多個新特性進行設計。可以簡單歸納為4個維度的智慧優化提升。

1、多租戶智慧優化

---將自動化運維進行到底

隨著網際網路和移動應用場景的深化,企業中的IT系統越來越複雜,在運維管理上面臨巨大的壓力。整合與集中管理是必然之路。多租戶跨出的第一步證明了它可以解決企業的IT系統在運維和管理上面臨的眾多問題,那麼接下來就是從“可用”到“如何用得更好”的問題。在12.2的基礎上,Oracle 18c在多租戶的方案上實現瞭如下優化:

1)增強的PDB複製功能:在12.2的基礎上支援對克隆PDB進行refresh,可實現完全的資料同步,除了應用於故障內外的failover和switchover之外,還可以建立同步的測試環境。對PDB的複製實現上,還支援對PDB進行加密複製和傳輸,更是擴充套件了其應用場景。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

2)快照轉盤實現全面資料保護和基於時間點的恢復資料安全越來越成為企業的核心關注點。從內部管理的角度來說,有效的備份是不可或缺的。而以往需要DBA制定的備份策略,在18c中已經完全實現了自動化。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

3)CDB Fleet的管理,不止於整合,更實現系統規範管理。將不同的CDB作為一個整體來管理,分配不同的CDB的角色。可以通過其中的leader角色統一負責資源的協調和管理,並對其他成員進行操作。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

4)通過ContainerMap的特性,在app root中統一對PDB的表進行管理,定義PDB中表的分割槽策略。當Container Map的內容發生更新時,會自動同步到PDB的map-tab當中。這為application Container中的表的管理提供了極大的便利。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

通過這些特性的引入,Oracle多租戶方案從簡單的整合集中,到自動運維管理,再邁向智慧自治自動駕駛,水到渠成。

2、In-Memory優化

---卓越效能,極致使用者體驗

效能是一條沒有盡頭的路。從硬體到軟體,從系統到演算法,Oracle每一個版本在效能提升上都會帶來驚喜。在18c版本中,其效能提升主要體現在IN-MEMORY的優化上。包括以下新特性:

1)In-Memory 自動記憶體管理:主要指的是指自動選擇適合In-Memory的物件並壓縮提速等。自動管理IM列儲存資料,無需人為干預,有益於Oracle管理的雲服務,該特性會帶來2x的效能提升。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

2)In-Memory動態掃描:記憶體中動態掃描提供了同時掃描多個IMCU的功能。充分利用CPU資源,最大限度提高列式掃描效能,最高達到2X效能

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

3)對XMEM的支援,並非易失性記憶體(NVRAM)極大擴充套件記憶體容量,可以有大於3x 列式儲存。而加大的列儲存將極大地提高資料倉儲場景下的資料查詢效率。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

4)Memoptimized Rowstore:該特性是訪問OLTP工作負載的記憶體優化,存在於SGA中,用於啟用快速查詢時儲存表的雜湊索引。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

除此,18c中IN-MEMORY做了以下演算法優化,number型別可以使用SIMD硬體進行快速計算,列儲存將NUMBER數值列以原生二進位制表示,通過使用SIMD向量處理,簡單聚合和Group by聚合效能明顯提升,可高達9倍。針對混合工作負載效能,達到2x提升,同時通過壓縮,fast-start優化,dynamic capturewindows等技術,在各個應用場景下的效能都得到了極大改善。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

3、ADG及聯機操作優化

---從高可用到全面可用

首先nologging功能在ADG環境下得到更好的支援,可用於分解負載或實現高可用兩種場景,通過nologging的支援,極大地減少生成Redo的數量。而使用者可以根據需求選擇主備之間的資料同步級別。

在使用多例項的Redo應用場景下,ADG中可以啟用RMAN的塊變更跟蹤檔案(block change tracking file),將多例項日誌應用(12.2新特性)與增量備份技術結合,提高adg環境的效能和可用性。同時還支援在主備之間直接傳輸dml語句。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

在功能優化的基礎上,Oracle在adg上同時增強了安全策略,比如可以對standby環境做單向加密,而不影響主備之間的資料傳輸和同步。

同時資料庫在表的操作支援上,比如對多型表,inline外部表的支援,表的線上分割槽重構和合並的實現,都體現了全面相容可用,靈活切換的趨勢。外部表同時也支援在IN-MEMORY中使用。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

4、RAC與Sharding

---融合式應用場景

自從Sharding和多租戶場景推向市場後,很多使用者認為這是完全不同的兩種場景下的解決方案。前者用於大表大庫的分解管理,後者則是多庫的集中和一體化管理。在12.2中通過多租戶與RAC結合,也形成了Flex Cluster,Cluster Domain等各種超集合方案。那麼與Sharding是否有共通和相容之處呢?

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

從18c中我們可以看出,pdb可以作為Sharding中的分片,可以作為Flex Cluster中的節點,而每一個Shard也可以是RAC叢集中的節點。這樣的相容,為企業中各類資料庫的合併和分解提供了極大的便利。不用再擔心技術上的溝壑,只需要根據業務需求,在合適的時間選擇合適的方案,靈活切換。當然應用場景融合畢竟不屬於高頻需求,目前也只是在簡單的技術上實現支援,但我們相信,隨著Oracle一步步前進,最終走向靈活的業務管理不是問題。

就像羅馬不是一天建成的,Oracle的智慧化和自動管理,絕不是一蹴而就,而是經過多年的積累和優化,當然18c的推出僅僅代表Oracle終於邁出了這一步,而不是徹底走向了智慧。我們期待在後續的版本中,看到Oracle更多的在本地資料庫,尤其是exadata之外的資料庫環境發力,從而擴充套件其可服務範圍。

(本文只包含重要的新特性,如果想了解更多,請查驗官方文件,或持續關注公眾號,我們會繼續分享。)

 【非技術篇】設計之路,一路走來

從Oracle12.2的從0開始設計繪製,到現在完善了Oracle 18c的新特性版本,從手繪到電子稿到正式的設計圖,一篇篇新特性文件啃下來,一條線一個框畫出來,一點點上色美化,整個過程我學習到了很多東西,遠遠超過了技術。所以很想分享一些技術以外的感想,與大家共勉。

做一件看似力所不能及的事情

人是一種很複雜的生物體,哪怕是自我這樣熟悉的軀體裡面,你可能並不知道存在什麼樣的力量,或者是什麼在驅動她的運轉。而人生中最大的樂趣之一,就是不斷地嘗試,並發現自己還能做更多,承受更多的過程。

樑寧把人的核心驅動力劃分為恐懼驅動和愉悅驅動兩種。很多時候我們很難區分二者,只會表現出既興奮又有點害怕的狀態,或許他們就是共存的,就像一個追求完美的人,很難區分是因為完美給他帶來的愉悅多一點,還是不完美讓他受不了多一點。

最初想自己創作這張圖的時候,剛開始是12.2,有一次老闆無意中說起,想要更新以前的海報,但當時整個團隊忙於其他事情,誰都沒有放在心上。那時候我對於Oracle的學習並不深入,只是公司的學習資源比較多,而我整理文件會學習到各種不同的思路,也比較真實地感知著Oracle的完美和強大,它如此細緻優雅,是讓人著迷的。而體系架構圖,則是它優雅軀體的完美展現。

當時觸發我的點是,在Oracle領域,在雲和恩墨,大家都是專家,無論做什麼,都是別人做過的。已經有了標準有了約束。一件有對錯的事情是容易產生挫敗感的。但12.2的架構圖,是未知的,是全新的。未知的事物就代表著沒有恐懼。你可以嘗試失敗並把它定義為常態,而如果恰好成功,那就是意外的驚喜了。

  • 創作第一階段:啃文件,積累知識

我當時默默地開始讀文件,去理清楚上一個版本的邏輯關係,整理下一個版本的新特性。那是在技術裡面最單純快樂的日子。把陌生的東西變成熟悉,懼怕的變成享受,複雜的通過紙和筆一點點列出來理清楚。當時花了多少遍不記得了,但我印象中用了好幾沓A4紙,雖然是草稿,一直都捨不得扔。直到後來搬家,只留了其中幾張。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

剛開始最大的挑戰還是在技術上。作為一個技術菜鳥,要讀懂Oracle十幾本新特性文件並將整個體系關聯起來並不容易。常常會遇到昨天剛剛理清楚的思路,被今天新發現的一個細節完全推翻的情況。不得不從頭再來。但那時候工作很忙,很少有完整的時間去思考,有時為了思維不斷片,晚上會連續盯著牆上的圖看很久,生怕有什麼遺漏。那段時間做夢都是在看文件和畫圖。

事實上那樣的堅持,非但不枯燥反而給我的生活帶來了很多樂趣。有時候工作特別忙,或者特別不開心的時候,看到自己整理的技術點,或者看著已經整理過的好多文件,就特別滿足。從而更有動力。

第一個階段,也就是整理技術的階段很快過去,接下來就是如何將技術優雅地呈現。

  • 創作第二階段:繪圖設計

為了一開始不陷入繪圖軟體的限制,在讀文件的時候一直是手繪圖,但並不方便更新,每次修改都是重新畫。於是需要做成電子版。查過很多專業的繪圖軟體,最後卻選擇了用OneNote筆記。原因是簡單隨意。它沒有模板框架的限制,只提供最基本的顏色,筆和紙。你可以定義所有自己眼裡的美有很多同學經常問起關於工具和軟體的選擇,每個人都特徵不一樣,只要自己用起來舒服的,你就可以用它來創作。

這裡也聯想到產品設計中最基本的一個原則,不要讓使用者思考,要順從他的潛意識。我個人就是很典型的懶使用者,對於有複雜規則和使用方法的工具,我都敬而遠之。OneNote就是這樣一款看似傻傻的什麼都沒有的工具,卻可以讓使用者最大程度的滿足和發揮自己的創造力。

  • 創作第三階段:梳理程式,框線,顏色等各類細節

先是把手繪圖搬到了OneNote上面,之後不斷地完善,每一個模組,每一個功能,每一個線條,每一次上色,都會讓你覺得,原來還可以更好,而正是這種更好的反饋激勵我不斷去更新完善,每一個細節都不會錯過。

週末的時候,把畫板放大到極限,然後一點點把顏色凃進去。看著色彩在框架裡跳躍,感覺圖終於有了生命。

Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

  • 創作第四階段:找茬

最後幾個星期,簡單概括為找茬。每天盯著圖看那一條線還有問題,哪一個框的顏色對不對,哪一個程式,是否還可以有更好的位置方便連線。越是到快要結束的時候,越覺得整個過程太美捨不得結束。又興奮地期盼著終版出來然後開心地拿去印刷。

life is a journey, and one of the most  exciting  things  in it is try your best  to find out what you can do and who you can be. 

我說人總要做一些有挑戰的看似力所不能及的事情,併為此拼盡全力。未知是沒有束縛的,成功是幸運,就算你天天被打擊,也不用擔心,因為你會在被打擊的過程中,逐漸變得強大。這樣的成長,是確定性給不了的。

繪畫是我的能量場

曾經看到過一句話,外向的人從社交中獲得能量,而內向的人則從事物中獲得能量。繪圖對於我來說,就是我的能量場。我不懂專業的色彩搭配,光度對比,甚至不用懂。但每次沉浸其中,花一個下午的時間把色彩裝進線條裡面,看著他們在紙上在電腦上躍動,心生喜悅。

色彩是陽光的產物,卻是另一種讓人溫暖的表達。在選擇配色的時候,每一個框的底色,每一條線,都會細細琢磨。而我腦海中的場景,是各種陽光。比如陽光穿過樹葉的時候是灰綠與金黃色的結合,陽光透過玻璃照進來,是橘色和藍色,陽光經過建築在角落打下陰影,是藍綠色和灰色,或在湖面的漣漪上,濺起的水花是玫紅與紫色,每一個場景它都是不一樣的,都有最適合它的顏色表達出來,有最靈動的生命。

給每一個人:成為更好的自己

跟那些有明確想法的同學和同事相比,我總是處於各樣的困擾中。很多時候看不清未來的路,也會很慌。也許是因為我本就喜歡未知,也享受未知帶來的痛苦和愉悅。不過如果有跟我一樣迷茫的孩子,我很想分享一段話。我不記得摘抄自哪裡,它一直在我的日記本里,靜靜地存在,在我迷茫困惑的時候會給我力量。

有一天你將破蛹而出,成長得比人們期待的還要美麗。但這個過程會很痛,很辛苦,有時候還覺得灰心,面對洶湧而來的現實覺得自己渺小無力。但這也是生命的一部分。做好現在你能做的,然後一切都會好的。我們都將獨孤地長大,不要害怕。

迷茫是人生的常態。只有極少數卓越的人一路上一直很清楚自己要走到哪裡,看到什麼樣的風景。我們大部分人,都是在不斷試錯中成長。迷茫的時候,做些讓自己心動愉悅的事情,找到自己的能量場,不要被殘酷的現實打倒。機遇總是會來,今天或是明天。你準備好了,就要不遺餘力。

不要怕,不要沮喪。做最好的自己。為你所愛的,和你想要的。

在兩次繪圖過程中,感謝蓋總,楊老師,kamus,羅海雄等各位專家的指導和幫助。感謝熊總,在我設計18c的時候給予我很大的支援,感謝恩墨的大家,讓我時常感受到溫暖和力量。

雲和恩墨,是一個值得你託付才華和夢想的地方。如果你有夢,如果你願意為此付出努力。我們歡迎你,來這裡一起進步!

作者簡介Oracle 18c體系架構圖創作之路 - 設計者說(精品海報大放送)

孫雪

雲和恩墨資料安全產品經理。Oracle 11g OCP, Oracle 12.2,18c 體系架構圖設計師,參與出版《Oracle效能優化與診斷案例精選》,主講線上系列課程“Oracle RAC深入解析”、“Oracle 12.2新特性“

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31556440/viewspace-2221594/,如需轉載,請註明出處,否則將追究法律責任。

相關文章