oracle raid的區別使用
我們在部署伺服器時通常都免不了RAID陣列級別的選擇,RAID技術發展到今天已經有數十種之多了,但我們在生產系統上常用的也就只有幾種,如 0,1,5,0+1。讀者朋友可能對各個級別的RAID原理已經非常熟悉了,甚至能背誦出來,但面臨真正在生產系統中選擇最適合應用系統的RAID級別 時,可能沒多少心理有底,本文就oracle資料庫伺服器在選擇RAID陣列級別時做一個介紹,希望對還心存疑慮的人們吃一粒定心丸。
首先,還是來看看常用的幾個RAID級別之間的優缺點。
RAID 級 |
優缺點描述 |
不用RAID |
任何RAID 都有一定的管理開銷,如果你最需要的是資料寫入速度,且不需要為保護資料,那麼 你就可以選擇不使用RAID ,如果你有3 塊 硬碟,那可以將其中一塊用於安裝作業系統和資料庫軟體,第二塊用作儲存資料檔案,第三塊用作儲存日誌檔案,這樣系統整體效能會非常好,但任何一塊硬碟壞 掉,系統維護時間都比較長,當然,如果你還有更多的硬碟,那可以將每塊硬碟承擔的工作進一步細化,如專門拿一塊儲存控制檔案和引數檔案,而且還可以將多個 資料檔案分開,每個檔案一塊硬碟,這樣效能只能說是大大的好。 |
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 RAID 0 RAID 0+1 |
與控制檔案類似,線上重做日誌檔案更新也非常頻繁,必須考慮 使用速度快的RAID級別。需要注意的是建議使用多個線上重做日誌檔案。 |
臨時資料 |
不用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來存放了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30152793/viewspace-1622021/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- RAID 1+0和RAID 0+1的區別AI
- 掃盲:Raid0、Raid1、Raid5及Raid10的區別AI
- 學習RAID 01/10/10E的區別AI
- 【oracle rowid與rownum的使用與區別 】Oracle
- 在 Linux 下使用 RAID(一):介紹 RAID 的級別和概念LinuxAI
- Oracle CHAR,VARCHAR,VARCHAR2,nvarchar型別的區別與使用Oracle型別
- mysql與Oracle的區別MySqlOracle
- Oracle - @和@@、&與&& 的區別Oracle
- MySQL和Oracle的區別MySqlOracle
- oracle in與exists 的區別Oracle
- Oracle和MySQL的區別OracleMySql
- 【基礎】Oracle CHAR,VARCHAR,VARCHAR2,nvarchar型別的區別與使用Oracle型別
- oracle restore與recover的區別OracleREST
- Oracle User 和 Schema 的區別Oracle
- Oracle Purge和drop的區別Oracle
- oracle中in和exists的區別Oracle
- oracle truncate 與 delete 的區別Oracledelete
- 不同於Oracle:SEQUENCE的區別Oracle
- Oracle的redo 和undo的區別Oracle
- 使用jquery和使用框架的區別jQuery框架
- ORACLE_BASE和ORACLE_HOME的區別Oracle
- Oracle DBA 和Oracle EBS DBA 的最大區別Oracle
- 【SQL】Oracle SQL join on語句and和where使用區別SQLOracle
- oracle group by中cube和rollup字句的使用方法及區別Oracle
- Oracle dba角色和sysdba的區別Oracle
- Oracle與OpenJDK之間的區別OracleJDK
- Oracle 和 mysql的9點區別OracleMySql
- oracle中distinct和group by的區別Oracle
- oracle ADG與DG的區別Oracle
- oracle中 DG和GG的區別Oracle
- Mysql與Oracle的50個區別MySqlOracle
- Oracle中truncate和delete的區別Oracledelete
- 【Oracle】global index & local index的區別OracleIndex
- (轉)ORACLE 中IN和EXISTS的區別Oracle
- Oracle中latch和lock的區別Oracle
- 【轉】oracle_base 和 oracle_home 的區別Oracle
- npm 和 yarn 的使用區別NPMYarn
- 使用框架和不使用框架的區別框架