orace 之RIAD的區別和使用

2021-07-22 08:35:14 字數 2527 閱讀 4598

我們在部署伺服器時通常都免不了raid陣列級別的選擇,raid技術發展到今天已經有數十種之多了,但我們在生產系統上常用的也就只有幾種,如 0,1,5,0+1。讀者朋友可能對各個級別的raid原理已經非常熟悉了,甚至能背誦出來,但面臨真正在生產系統中選擇最適合應用系統的raid級別 時,可能沒多少心理有底,本文就oracle資料庫伺服器在選擇raid陣列級別時做乙個介紹,希望對還心存疑慮的人們吃一粒定心丸。

首先,還是來看看常用的幾個raid級別之間的優缺點。

raid 級

優缺點描述

不用raid

raid0

熟悉raid 0的人都知道,它的讀寫速度是最高的,因為資料是分成小塊後,跨多塊硬碟同步寫入多塊硬碟的,這樣寫入速度就非常快了,如果你不信,可以將三塊硬碟組成 raid 0,然後安裝作業系統,你會發現安裝時間減少了好多。當然,讀取資料的速度相對單塊硬碟也會大幅提公升,不過這種raid用的人不多,因為一旦其中一塊硬碟 壞掉,資料恢復可能就得請專業的恢復公司了。raid 0非常適合那些作為**伺服器的快取使用,要的就是速度。

raid1

raid 1設計的目的就是為了保證資料的安全,通常我們稱之為映象,即如果你將兩塊硬碟組成raid 1,這時你在作業系統中看到的硬碟大小其實只有一塊的大小,另一塊都做映象了,所以這種情況下,乙份資料儲存了兩份,允許壞掉其中一塊而不影響作業系統和 應用程式的正常使用,但它的缺點是寫入速度都較單塊硬碟有所下降,畢竟寫操作時要寫兩次,肯定會消耗一定量的cpu時間片的。這種raid適合那些看重數 據安全的應用,如單位財務軟體用機。

raid0+1

從其名字就可以看出來,這是raid 0和raid 1技術的結合產物,它同時利用了raid 0的高速特性和raid 1的映象功能,滿足了對速度和資料安全同樣重視的使用者的需求。要實現這種raid,最少要4塊硬碟,允許其中一塊硬碟壞掉而不影響作業系統和應用程式。特 別適用於既有大量資料需要訪問,同時又對資料安全性要求嚴格的領域,如銀行、金融等

raid 5

raid 5可以理解為raid 0和raid 1的折中方案,raid 5具有和raid 0相近似的資料讀取速度,只是多了乙個奇偶校驗資訊,寫入資料的速度比對單個磁碟進行寫入操作稍慢。同時由於多個資料對應乙個奇偶校驗資訊,raid 5的磁碟空間利用率要比raid 1高,儲存成本相對較低。要實現這種raid,最少要3塊硬碟,允許其中一塊硬碟壞掉而不影響作業系統和應用程式。

在準備安裝oracle的伺服器上,究竟選擇哪種raid合適呢,我要告訴你的是,沒有定論,要想使你的oracle伺服器最終效能比較理想,下面 是我總結的乙個可行的辦法。

先規劃一下哪些磁碟存放什麼檔案,然後再看這些檔案的讀寫效能要求,按照效能要求再做對應的raid級別陣列。下面是oracle中涉及到的檔案類 型及我們推薦使用的raid級別,並闡述了推薦的理由:

檔案型別

推薦raid級別

推薦理由

控制檔案

不用raid

raid 0

raid 0+1

我推薦了3種raid級別來儲存控制檔案。 

因為控制檔案經常更新,所以速度越快越好。但使用raid 0或不使用raid儲存控制檔案時需要小心,要做好備份工作,還有一點需要注意的就是最好使用多個控制檔案,乙個壞了,說不定其他幾個還是好的,這樣就可 以直接用好的控制檔案覆蓋壞掉的進行恢復。

不用raid

raid 0

raid 0+1

臨時資料 

檔案不用raid

raid 0

臨時檔案注重的是快速訪問,不關心它的可靠性如何,如果資料檔案丟失了也可以原地快速重建的。所以這裡我推薦使用raid 0或不使用raid。

歸檔日誌 

檔案不用raid

raid 0

raid 0+1

歸檔日誌時,歸檔程序可能會消耗很多系統資源,所以速度越快越好,如果使用raid 0或不使用raid,建議多做幾份拷貝,如果使用raid 0+1,那你就高枕無憂了。

回滾/撤銷 

資料檔案

raid 0+1

這些檔案需要恆定不變的i/o,並且資料需要保護,因為oracle不能對其提供多份拷貝,如控制檔案那樣,所要採取硬體的形式提供多乙份保護,故 我推薦的是raid 0+1

資料檔案

raid 5

raid 0+1

資料檔案的大部分i/o操作都是在快取中進行的,物理寫入操作是在後台進行的,因此raid 5既可以減少成本,又不影響效能,推薦它,如果是i/o操作非常頻繁,raid 5已經感覺速度較慢,那就採取raid 0+1吧。

可能有的人看到這裡會有疑問了,按照這樣設計,那得用多少硬碟呀,是的,要想減少維護時間,增強資料安全性,保證應用效能,的確需要很多硬碟組成不 同形式的raid。如果你還有疑問,下面是在空間規劃時可以考慮的一些原則,可以參考:

◆如果你的預算充足,可以為所有oracle檔案採用raid 0+1分開儲存的方式。

◆為了減少成本,可以將資料檔案放在raid 5陣列上。

◆如果還想再減少一點成本,可以將所有的資料檔案都放在raid 5陣列上。

◆如果都還不行,那可以將歸檔日誌檔案和回滾/重 做表空間放在raid 5陣列上。

◆最後,只能將所有的檔案都使用raid 5來存放了。

ZYNQ MIO EMIO IO的區別和靈活使用

zynq mio emio io的區別和靈活使用 在使用zynq上arm cortex a9平台時首先面臨的就是對io進行操作,總的來說對io操作無怪乎兩種方式,一種是直接對gpio暫存器進行操作,這樣程式效率高,但編寫 困難 另一種是呼叫sdk工具提供的api介面函式。在實際使用時zynq又把gp...

NVARCHAR 和VARCHAR區別和使用

1 各自的定義 nvarchar n 包含 n 個字元的可變長度 unicode 字元資料。n 的值必須介於 1 與 4,000 之間。位元組的儲存大小是所輸入字元個數的兩倍。所輸入的資料字元長度可以為零。varchar n 長度為 n 個位元組的可變長度且非 unicode 的字元資料。n 必須是...

NVARCHAR 和VARCHAR區別和使用

1 各自的定義 nvarchar n 包含 n 個字元的可變長度 unicode 字元資料。n 的值必須介於 1 與 4,000 之間。位元組的儲存大小是所輸入字元個數的兩倍。所輸入的資料字元長度可以為零。varchar n 長度為 n 個位元組的可變長度且非 unicode 的字元資料。n 必須是...