閃存出現彌補CPU內存與磁盤之間空缺
   
孫浩認為CPU和內存的發展與磁盤的發展速度不匹配。CPU和內存遵循摩爾定律,每18個月翻一番,硬盤遠遠落后于CPU和內存的發展速度。無論是應用還有Oracle數據庫在處理I/O的時候,很大一部分時間是在等待底層客戶端的磁盤。那么通過添加CPU和添加內存來提供速度。為用戶客戶帶來一些隱性成本進來。閃存的出現填補了CPU內存到機械磁盤中間空缺。

當前一個很好的消息就是閃存的出現,閃存給應用給數據庫提供了很低的延遲,提供較大吞吐量,使用更少占地空間。滿足同樣的I/OPS,需要更少的SSD,這樣用戶就不需要上百塊或者是幾十塊的1.5萬轉的硬盤對接出來。甲骨文針對于數據庫在閃存方面做了很多優化,很多技術融合進來。

首先可以看一下軟件,Oracle公司針對于閃存優化可以從軟件層,首先從應用數據庫這層先去做優化。針對于存儲,實際上甲骨文存儲的核心是操作系統,是閃存優化和技術集成在存儲的操作系統里面。

甲骨文談分級存儲

針對Oracle公司針對于閃存優化從軟件層到數據庫層到底層的硬件層是全方位的閃存優化。孫浩總結第一個技術是分級存儲。第二層可以看到SmartFlashCache,從數據庫軟件角度出發設計的閃存優化。

分級存儲Oracle怎么做的。很簡單一個道理,在Oracle的數據庫11gR2版本以前,Oracle公司優化閃存做分級存儲是通過在服務器里頭插一塊閃存卡,像我們的F80的閃存卡或者是說一個全的閃存陣列。你加這個閃存卡干什么用?把Oracle數據庫做一個索引,建立在閃存卡上,用來提高Oracle數據的查詢和存儲。他給Oracle數據庫帶來哪些好的效果?響應時間提高兩倍,吞吐量提高兩倍,事務處理提高兩倍。這項技術有一個很好的地方,他可以去在線的去加入到我們數據庫里來,這里給大家展示一個非常直觀的一個實際的案例??梢钥吹街虚g部分是一個SUN公司原來一個6540的閃存陣列,他在X86服務器上插一塊閃存卡或者是接我們以前有款類似F5100的閃存陣列。把索引時間建立在閃存陣列上來,這個陣列是在線,不需要客戶區宕數據庫,完全可以在線建立。我們可以考慮一下這項技術,這項技術他解決了客戶的查詢,數據庫讀的查詢的問題。他在寫上其實是沒有太多的幫助,可能會對我們寫的性能有一點影響。他建了索引之后,我們以后做這種寫和更新這種改變,可以看到同步他的索引。一般情況下這項技術是客戶數據庫建立好了之后,數據進來之后然后再去建索引。數據庫類型是一個查詢類型的數據庫,是比較適合這樣的場景。

甲骨文談SmartFlashCache技術

第二個技術,從Oracle數據庫從11gR2版本開始,Oracle數據庫支持這項SmartFlashCache這個技術給Oracle帶來性能提升從2倍提升到5倍,他是智能動態應用,管理起來非常方便、智能透明,對數據庫也是非常透明。同時可以把閃存和機械盤兩種介質各自優勢發揮出來,最大降低客戶成本,提高客戶他的數據庫的性能,提高效率。

Oracle數據庫有一個很重要的區就是共享全局區,是Oracle把所有他的I/O處理等等這些所有I/O放到這個共享全局區里邊去。這個全局區是跟內存有關系,內存有一個問題,他的擴展性還有他的價格都是比較昂貴。甲骨文可以借助于Flash把他變成一個二級緩存,動態去擴展了他對SGA的區,把他這個區變得很大。也就是說把數據盡量的去放在SGA區里去,加大整個的Oracle數據庫的一個查詢的數。

集成式的工程一體化解決方案

分級存儲與SmartFlashCache技術都是解決數據讀取問題,這兩種數據都比較適合部署客戶偏讀性的場景,比如分析型數據庫,數據倉庫,數據查詢型。對傳統的這種我們像日志型的,事務型的數據庫,比較適合第三種。第三種我們看到像集成式的工程一體化解決方案,還有Exadata,它的存儲是比較特殊的一種存儲。他是由DB服務器和存儲服務器兩種設備組成,DB服務器就是Oracle的X86服務器,目前最新是有兩臺或者八臺的X86服務器組成。

最后孫浩談了Oracle存儲,Oracle有他自獨特的存儲,在設計上完全是遵循了Oracle公司的一個理念。其存儲產品的戰略完全是基于Oracle的軟件,Oracle存儲上結合軟件就最快最有效。Oracle存儲為什么能使Oracle數據庫運行起來非???,又非常有效,這個得益于Oracle公司在08年首創一個技術就是混合存儲池的技術。他舉例說“Oracle推出一個存儲產品就是ZS3這個系列,存儲它的特點是比較怪,我們很多客戶看到他的參數和其他的存儲廠商的硬件參數區別很大。首先看一下他的控制器,他的終端存儲和高端存儲配置他的CPU的核數有32核,高端80多核,你看他的內存,中端1TB,高端2TB。他如果到2TB的Cache來講,Oracle定位這個存儲產品,他是一個中高蛋的存儲產品。他先面有一個Flash,分讀寫的Flash,Oracle公司把CPU、內存和Flash作為處理存儲I/O的主要的介質。所以說我們可以看到他做的是非常的大,可以看到他底下的硬盤配置很簡單,僅僅只有兩種硬盤,一種是1萬轉,還有7200轉。Oracle的存儲跑Oracle數據庫來講跑的效果非常好,通過這種控制器和閃存提供強大的馬力。”

甲骨文談混合存儲池的技術

這項技術細致了解一下,混合存儲池技術和StoragePools的技術,Flash在這里頭起了什么作用?Flash他是讀寫區分,分讀Cache和寫Cache。他讀Cache是放在控制器里頭,寫Cache放到這里。2TB內存情況下再繼續加大到10TB級別的空間,相當于做一個二級緩存,交給內存去處理,緩存數據空間不夠,就把他弄到二級緩存上去。但是寫緩存,我們采用非??斓膯文さ牧薢FS,快速寫入新數據到DRAM閃存池,利用咱們磁盤大的吞吐量的優點。借助混合存儲池,這里有SPC-2和SPECsfs的指標。原則上他本身是一個統一存儲,在NAS環境下優勢很好,在SAS環境下他的大的吞吐量表現非常好。

在去年的測試是世界第一,但是今年我們看到有一個新的廠商做全閃存陣列廠商超過了我們,我們最新排名是第二和第三。這兩個指標體現什么問題?一個就是我跑Oracle數據庫性能如何,還有Oracle還有一個就是數據備份,我要看什么指標?就是SPC-2??梢钥吹絆racle推出全新的理念,就是用InfiniBand這種連接方式。另外可以看到Oracle存儲提供一個協議,Oracle12C在部署存儲的時候,不像傳統需要做存儲級別的調優。很多項目里頭,我們要去部署一臺Oracle數據庫一個服務器,他后面接的存儲需要一個存儲專家把我們存儲做一個非常專業的規劃,我們是分級存儲,我們的Flash,機械磁盤我們怎么去用,都需要非常專業的規劃,但是我們可以看到在Oracle,開發的智能存儲協議,以后Oracle公司的DBA部署他的數據庫的時候,它的存儲不需要做任何的調優。打個比喻,好象我們在使用單反照相機和傻瓜式照相機。專業人士做一個細微的調整,才可以作出專業照片。我們業余愛好者用傻瓜相機把畫面拍的很好。他的存儲的設計方向完全是面向于咱們的Oracle的DBA。他在使用Flash的時候,我控制文件還有數據文件還有歸檔,還是你做備份,你的Flash到底怎么用,用還是不用,全部交給OISP自動化完成,減少65%的數據庫和存儲調優時間。

可以看一下Oracle存儲針對于Flash,就是結合Flash存放和部署針對于Oracle數據庫是熱數據、暖數據還是冷數據做一個自動遷移,這和我們存儲技術做的層面不一樣,存儲是做一個存儲池,做一個打包,自動完成。然后他自己也開發一個功能,把這個部署在閃存上還是1.5萬個盤,他是通過數據庫層面完成。他是針對Oracle12C的一個技術做的更準確。我們可以看到他有一個更好的地方,他可以結合混量壓縮,他可以把數據庫壓縮到10-50倍,比傳統的存儲的技術壓縮比例要高很多。

最后孫浩對這三種模式做一個對比,什么樣的情況下客戶適用于什么樣的場景,如果客戶還是用老的版本,建議他用第一種解決方案。Oracle數據庫是用以后的版本,可以根據他的投資預算用后面的解決方案。最佳的解決方案除了Exadata比較昂貴,ZFS存儲加一個傳統的服務器,也是很好的解決方案,極致提高了咱們的數據庫去更好的把閃存用好。從Oracle數據庫層面以及存儲里面寫Flash還有讀的Flash從上到下完全全面整個的全面加速,把閃存最極致的優化。

閃存針對于I/O數據庫帶來的優勢比較明顯,Oracle針對閃存優化技術有一個非常獨特的優勢,Oracle為用戶提供一個最佳的解決方案去加速數據庫、提高生產力、效率和業務響應。另外Oracle閃存優化技術是多維度,不僅是從Oracle數據庫應用一方,還有服務器這一層,還有存儲這一層,更寬的緯度進行閃存進行一個優化??梢钥吹絆racle提供的是最佳軟件,完全是智能、透明、動態和高效,數據庫管理員不需要很高的技術能力,完全是自動化透明做成部署。最后可以看到利用整個Oracle整個閃存的優化技術,大幅降低了客戶的投資,同時利用這些完全自動化的技術還有降低更多成本,降低客戶的日常管理成本。

未經允許不得轉載:存儲在線-存儲專業媒體 » 孫浩:Oracle數據庫與閃存技術分析
分享到

renxinbo

相關推薦

精品国产午夜肉伦伦影院,双性老师灌满浓jing上课h,天天做天天爱夜夜爽,攵女乱h边做边走