|
Exadata一開始是以一個存儲系統(tǒng)形式誕生的,叫做SAGE(Storage Appliance for Grid Environ ments,網(wǎng)格環(huán)境存儲設(shè)備) Exadata原本設(shè)計用來解決超大型數(shù)據(jù)庫所存在的普遍性能瓶頸(也就是無法在可接受的時間范圍內(nèi)從磁盤存儲系統(tǒng)向數(shù)據(jù)庫服務(wù)器傳輸足夠大的數(shù)據(jù)) Oracle Exadata解決超大型數(shù)據(jù)庫性能問題的兩個主要方式:
在了解Exadata的其它方面之前,最應(yīng)該先了解的是存儲節(jié)點(diǎn)卸載(offload)處理,所有其它的技術(shù)都只是為了支持存儲節(jié)點(diǎn)的卸載處理。 存儲節(jié)點(diǎn)卸載處理(Cell Offload Processing):該工作由存儲服務(wù)器完成,否則就必須在數(shù)據(jù)庫服務(wù)器上執(zhí)行
智能掃描(Smart Scan):這是存儲節(jié)點(diǎn)卸載處理中與提高數(shù)據(jù)倉庫/商業(yè)智能查詢性能最有關(guān)的操作
全表掃描或者全索引快速掃描(Full Scan or Index Fast Scan):為了觸發(fā)智能掃描,查詢優(yōu)化器選擇的必要的訪問方式 Exadata的組件(整體架構(gòu)) ![]() 可以將Exadata劃分為兩部分,即存儲層和數(shù)據(jù)庫層,兩層使用infiniband網(wǎng)絡(luò)來連接 infiniband:提供低延時、高寬帶的管錢通信鏈路,也提供鏈路上的冗余和聯(lián)結(jié)(bonding) 數(shù)據(jù)庫層:多個sun服務(wù)器組成,運(yùn)行Oracle 11g R2軟件,RAC不是必須的,當(dāng)通常會配置成一個或者多個RAC集群,使用ASM來管理存儲(ASM是必須的) 存儲層:也是多個sun服務(wù)器構(gòu)成,每個存儲服務(wù)器12塊磁盤,運(yùn)行Oracle存儲服務(wù)器軟件(cellsrv) 數(shù)據(jù)庫層與存儲層使用infiniband網(wǎng)絡(luò)連接,使用iDB協(xié)議進(jìn)行通信 iDB協(xié)議:iDB用來將請求和請求的元數(shù)據(jù)(比如查詢謂詞where)傳到存儲服務(wù)器軟件cellsrv中,通過cellsrv軟件在存儲中進(jìn)行智能掃描到需要的數(shù)據(jù),然后將最終的結(jié)果返回給數(shù)據(jù)庫層,所以將大大減少傳輸?shù)綌?shù)據(jù)庫層的數(shù)據(jù)量 當(dāng)不能進(jìn)行智能掃描時,cellsrv會返回整個Oracle數(shù)據(jù)塊 iDB使用的是RDS協(xié)議,這是一種低延時的協(xié)議,跳過了內(nèi)核調(diào)用 Exadata歷史 V0:SAGE(網(wǎng)格環(huán)境存儲設(shè)備)--HP的硬件和Oracle軟件 V1:2008年第一款正式Exadata--HP的硬件和Oracle軟件---主要為數(shù)據(jù)倉庫平臺 V2:2009年,4核,Sun的硬件,Oracle的軟件(Oracle此時已經(jīng)嘗試收購Sun公司),采用大容量固態(tài)存儲 X2:X2-2:升級到8臺雙CPU服務(wù)器,6核。 X2-8:8*8核CPU,1T內(nèi)存,定位為大型OLTP系統(tǒng) Exadata可選的配置(X2-2)
Exadata可選配置(X2-8)
半機(jī)柜和全機(jī)柜配置可以連接到額外的機(jī)柜(多機(jī)柜配置模式)最多可連接8個機(jī)柜,這種配置需要額外的infiniband交換機(jī),稱作‘spine switch’(用來連接額外的機(jī)柜) Exadata硬件(機(jī)柜為42U) ![]()
其中的以太網(wǎng)交換機(jī)是整套設(shè)備中唯一能允許客戶自行替換的設(shè)備 Exadata的操作系統(tǒng)
Infiniband(Exadata中最重要的硬件組件之一) 用來在數(shù)據(jù)庫層與存儲層進(jìn)行數(shù)據(jù)傳輸和通信, 可以在RAC環(huán)境下作為數(shù)據(jù)庫節(jié)點(diǎn)間的互聯(lián)(interconnect)網(wǎng)絡(luò) 課用來連接外部系統(tǒng),如備份系統(tǒng) 磁盤(兩種可選)
Oracle不允許混合這兩種磁盤使用 11g R2發(fā)行版數(shù)據(jù)庫內(nèi)默認(rèn)已經(jīng)有對于Exadata的代碼,可以檢測到軟件是不是再訪問Exadata存儲,這種感知能力可以讓數(shù)據(jù)庫在訪問Exadata存儲時使用到為Exadata設(shè)計的特有優(yōu)化手段。 存儲層對于數(shù)據(jù)庫層是是不可見的,需要ASM存儲管理。ASM可提供普通冗余(兩份copy),高度冗余(三份copy) Exadata存儲服務(wù)器上沒有任何形式的硬件或者軟件實現(xiàn)的RAID來保護(hù)數(shù)據(jù),鏡像保護(hù)功能完全通過ASM來提供 功能運(yùn)輸(function shipping):iDB將正在執(zhí)行的SQL語句信息傳到存儲節(jié)點(diǎn)上,存儲節(jié)點(diǎn)將計算過的數(shù)據(jù)而并非數(shù)據(jù)塊直接返回給請求的進(jìn)程。iDB可以返回給數(shù)據(jù)塊服務(wù)器的數(shù)據(jù)僅僅限制在那些滿足查詢的行和列,這種模式僅僅在執(zhí)行全表掃描的時候才可用 Exadata軟件架構(gòu) ![]() 上半部分是標(biāo)準(zhǔn)的Oracle 11g架構(gòu),顯示了緩沖區(qū)和共享池的全局區(qū)(SGA),也顯示了一些主要的進(jìn)程 下半部分顯示一臺存儲服務(wù)器的組件,只有一個進(jìn)程cellsrv來處理與數(shù)據(jù)庫服務(wù)器之間的通信,還擁有一些少數(shù)的輔助進(jìn)程和監(jiān)控環(huán)境 cellsrv使用init.ora以及alert.log文件,以及ADR(自動診斷信息庫) ![]() 概念總結(jié) Exadata的硬件本身沒有什么神奇的地方,大多數(shù)的性能優(yōu)勢來自于整合的組件以及在存儲層上實現(xiàn)的軟件。 |
|
|