數(shù)據(jù)之間硬件資源共享是伴隨著企業(yè)系統(tǒng)發(fā)展所產(chǎn)生的問題,也給數(shù)據(jù)庫的故障快速恢復帶來了很多技術挑戰(zhàn)。為此,建設一套集群管理下的并發(fā)、可動態(tài)插撥“云”數(shù)據(jù)庫,以分布式結構進行數(shù)據(jù)集中管理,成為企業(yè)數(shù)據(jù)庫建設的升級目標。
通過使用高可靠的硬件環(huán)境及軟件系統(tǒng),使數(shù)據(jù)庫部署及維護更具彈性化、易用性。實現(xiàn)數(shù)據(jù)庫的“云”化,不但可以使數(shù)據(jù)庫管理集中,同時也要求為各應用系統(tǒng)數(shù)據(jù)的東西向數(shù)據(jù)共享提供良好的底層通道。與此同時,數(shù)據(jù)庫的熱遷移和故障快速恢復時效性也要求大大縮短。數(shù)據(jù)庫系統(tǒng)的7×24小時高可靠性、維護簡便性要進一步提高(如圖1)。
圖1 數(shù)據(jù)云系統(tǒng)圖
該方案利用四臺服務器(ibm power8)組成的計算資源池,四臺存儲組成的存儲資源池,搭建數(shù)據(jù)庫云硬件平臺。利用兩套小機計算資源組,結合Oracle12C構建成基礎數(shù)據(jù)庫云(CDB),實時動態(tài)地為每一個“可插拔數(shù)據(jù)庫(PDB)”分配 CPU、內存、存儲等系統(tǒng)資源;可動態(tài)移動“可插拔數(shù)據(jù)庫”至任意計算節(jié)點和存儲節(jié)點上運行,從而更高效地確保信息系統(tǒng)數(shù)據(jù)庫能在 7×24小 時下安全運行;可及時創(chuàng)建和擴展新的應用系統(tǒng)“可插拔數(shù)據(jù)庫”。
該系統(tǒng)物理層采用計算資源池、存儲資源池結構,通過兩臺SAN網(wǎng)絡交換機進行計算節(jié)點于存儲節(jié)點的雙鏈路交叉冗余連接,確保數(shù)據(jù)路存儲鏈路通道雙活及高可靠性及安全性。任意存儲節(jié)點可被任意計算節(jié)點管理和使用。存儲設備采用更適合數(shù)據(jù)庫大I/O并發(fā)性能需求的RAID10安全機制進行數(shù)據(jù)物理層冗余保護。在操作系統(tǒng)層,利用IBM公司提供的GPFS集群文件系統(tǒng)進行統(tǒng)一化文件系統(tǒng)管理,并進行條帶化讀寫,提高數(shù)據(jù)庫集中管理后帶來的高I/O并發(fā)性能及可靠性需要。使得數(shù)據(jù)存儲具有扁平化可視能力。計算節(jié)點使用兩套2節(jié)點小型機采用多活冗余架構,提供計算節(jié)點的可持續(xù)工作能力,通過兩套OracleRAC機制確保在最困難情況下有一組Oracle集群VIP服務地址可用。4個計算節(jié)點使用獨立的兩臺物理交換機并通過網(wǎng)卡綁定技術實現(xiàn)組內計算節(jié)點的心跳、GPFS、集群數(shù)據(jù)交換的網(wǎng)絡冗余,最大限度地消除了計算節(jié)點間單點故障帶來的可靠性及數(shù)據(jù)庫物理層安全隱患。確保系統(tǒng)高效穩(wěn)定運行,充分利用設備硬件資源,降低電力、空調消耗,減少設備資產(chǎn)投入。
使 用Oracle 12C集群管理并發(fā)“云”數(shù)據(jù)庫;Oracle 12C引入了CDB與PDB的新特性,在Oracle 12C數(shù)據(jù)庫引入的多租用戶環(huán)境(Multitenant Environment)中,允許一個數(shù)據(jù)庫容器(CDB)承載多個可插拔數(shù)據(jù)庫(PDB)。CDB全稱為Container Database,中文翻譯為數(shù)據(jù)庫容器,PDB全 稱 為Pluggable Database,即可插拔數(shù)據(jù)庫。分別在小機組中安裝兩套Oracle 12C RAC集群數(shù)據(jù)庫,啟用云數(shù)據(jù)庫特性,建立兩套數(shù)據(jù)庫容器(CDB),可動態(tài)插拔數(shù)據(jù)庫。數(shù)據(jù)庫管理員可以在任意節(jié)點可以加載、關閉業(yè)務系統(tǒng)需要的可插拔數(shù)據(jù)庫。
實現(xiàn)數(shù)據(jù)庫與物理節(jié)點的松耦合和任意漂移。進一步提高了數(shù)據(jù)庫的動態(tài)管理能力,大大減少了數(shù)據(jù)庫故障平均恢復時間(MTTR<600s)。啟用云數(shù)據(jù)庫內存數(shù)據(jù)庫(TimesTen)特性,在數(shù)據(jù)庫管理系統(tǒng)中啟用Oracle內存數(shù)據(jù)庫TimesTen,通過改變數(shù)據(jù)在運行時駐留位置的假設來提供實時性能。該特性在數(shù)據(jù)庫集中后將各可插拔數(shù)據(jù)庫產(chǎn)生的熱數(shù)據(jù)以列壓縮方式直接放置于內存區(qū)域中,進一步提高了實時查詢的響應速度和吞吐量。極高的優(yōu)化了數(shù)據(jù)庫的I/O性能需求,同時也減輕了操作系統(tǒng)級I/O并發(fā)的壓力。邏輯層通過Oracle 12C RAC、雙數(shù)據(jù)庫容器(CDB)機制提供的冗余能力,可以確保數(shù)據(jù)庫在最困難狀態(tài)下,一臺物理節(jié)點將所有可插拔數(shù)據(jù)庫(PDB)啟動并向應用層提供數(shù)據(jù)庫訪問能力。從而實現(xiàn)了業(yè)務數(shù)據(jù)庫的“云”化管理和服務能力。在邏輯層提供高效的7×24小時服務,同時提供了高效的數(shù)據(jù)庫動態(tài)遷移及任意節(jié)點部署能力,大大增加了數(shù)據(jù)庫系統(tǒng)的可靠性、可用性及高安全性。
Oracle 12C數(shù)據(jù)庫“云”技術方案,通過使用高可靠的硬件環(huán)境及軟件系統(tǒng),實現(xiàn)了硬件及軟件層面的高可靠冗余,徹底消除了硬件及軟件層單點故障,從而使數(shù)據(jù)庫部署及維護更具彈性化、易用性。實現(xiàn)了業(yè)務數(shù)據(jù)庫的“云”化,不但可以使數(shù)據(jù)庫管理更加集中,同時也為各應用系統(tǒng)數(shù)據(jù)的東西向數(shù)據(jù)共享提供了良好的底層通道。與此同時,數(shù)據(jù)庫的熱遷移和故障快速恢復時效性也大大縮短。有力的提升了數(shù)據(jù)庫系統(tǒng)的7×24小時高可靠性。
計算及存儲資源的多機冗余結合Oracle 12C數(shù)據(jù)庫管理系統(tǒng)的可插拔數(shù)據(jù)庫技術,進一步提高了數(shù)據(jù)庫系統(tǒng)的在線的安全性,遷移快速性,業(yè)務數(shù)據(jù)庫恢復高效性,該平臺建成后節(jié)省計算、存儲資源37%以上。