解決方案

              ORACLE RAC群集方案

              ORACLE RAC群集方案

              Oracle RAC編輯

              RAC,全稱real application clusters,譯為“實時應用集群”, 是Oracle新版數據庫中采用的一項新技術,是高可用性的一種,也是Oracle數據庫支持網格計算環境的核心技術。
              中文名
              實時應用集群
              外文名
              real application clusters
              英文簡稱
              Oracle RAC
              類    型
              數據庫技術

              目錄

              1優點

              2缺點

              3組件

               
               

              1優點編輯

              Oracle RAC主要支持Oracle9i、10g、11g版本,可以支持24 x 7 有效的數據庫應用系統,在低成本服務器上構建高可用性數據庫系統,并且自由部署應用,無需修改代碼。在Oracle RAC環境下,Oracle集成提供了集群軟件和存儲管理軟件,為用戶降低了應用成本。當應用規模需要擴充時,用戶可以按需擴展系統,以保證系統的性能。
              (1)多節點負載均衡;
              (2)提供高可用:故障容錯和無縫切換功能,將硬件和軟件錯誤造成的影響最小化;
              (3)通過并行執行技術提高事務響應時間----通常用于數據分析系統;
              (4)通過橫向擴展提高每秒交易數和連接數----通常對于聯機事務系統;
              (5)節約硬件成本,可以用多個廉價PC服務器代替昂貴的小型機或大型機,同時節約相應維護成本;
              (6)可擴展性好,可以方便添加刪除節點,擴展硬件資源。

              2缺點編輯

              (1)相對單機,管理更復雜,要求更高;
              (2)在系統規劃設計較差時性能甚至不如單節點;
              (3)可能會增加軟件成本(如果使用高配置的pc服務器,Oracle一般按照CPU個數收費)。
              在Oracle9i之前,RAC的名稱是OPS (Oracle parallel Server)。RAC 與 OPS 之間的一個較大區別是,RAC采用了Cache Fusion(高速緩存合并)技術。在 OPS 中,節點間的數據請求需要先將數據寫入磁盤,然后發出請求的節點才可以讀取該數據。使用Cache fusion時,RAC的各個節點的數據緩沖區通過高速、低延遲的內部網絡進行數據塊的傳輸。

              3組件編輯

              在一個應用環境當中,所有的服務器使用和管理同一個數據庫,目的是為了分散每一臺服務器的工作量,硬件上至少需要兩臺以上的服務器,而且還需要一個共享存儲設備。同時還需要兩類軟件,一個是集群軟件,另外一個就是Oracle數據庫中的RAC組件。同時所有服務器上的OS都應該是同一類OS,根據負載均衡的配置策略,當一個客戶端發送請求到某一臺服務的listener后,這臺服務器根據我們的負載均衡策略,會把請求發送給本機的RAC組件處理也可能會發送給另外一臺服務器的RAC組件處理,處理完請求后,RAC會通過集群軟件來訪問我們的共享存儲設備.
              邏輯結構上看,每一個參加集群的節點有一個獨立的instance(數據庫實例),這些instance訪問同一個數據庫。節點之間通過集群軟件的通訊層(communication layer)來進行通訊。同時為了減少IO的消耗,存在了一個全局緩存服務,因此每一個數據庫的instance,都保留了一份相同的數據庫cacheI
              RAC中的特點是:
              每一個節點的instance都有自己的SGA
              每一個節點的instance都有自己的background process
              每一個節點的instance都有自己的redo logs
              每一個節點的instance都有自己的undo表空間
              所有節點都共享一份datafiles和controlfiles
              還提出了一個緩存融合的技術(Cache fusion)
              目的有兩個
              01.保證緩存的一致性
              02.減少共享磁盤IO的消耗
              因此在RAC環境中多個節點保留了同一份的DB CACHE
              緩存融合(Cache fusion)工作原理:
              ****************************************
              01.其中一個節點會從共享數據庫中讀取一個block到db cache中
              02.這個節點會在所有的節點進行交叉db block copy
              03.當任何一個節點緩存被修改的時候,就會在節點之間進行緩存修改
              04.為了達到存儲的一致最終修改的結果也會寫到磁盤上
              ClusterWare組件
              *******************
              四種Service
              Crsd -集群資源服務
              Cssd - 集群同步服務
              Evmd - 事件管理服務
              oprocd - 節點檢測監控
              三類Resource
              VIP - 虛擬IP地址(Virtual IP)
              OCR - Oracle Cluster Registry(集群注冊文件),記錄每個節點的相關信息
              Voting Disk - Establishes quorum (表決磁盤),仲裁機制用于仲裁多個節點向共享節點同時寫的行為,這樣做是為了避免發生沖突。
              RAC的組件
              ************
              提供過了額外的進程,用來維護數據庫
              LMS - Global Cache Service Process 全局緩存服務進程
              LMD - Global Enqueue Service Daemon 全局查詢服務守護進程
              LMON - Global Enqueue Service Monitor全局查詢服務監視進程
              LCK0 - Instance Enqueue Process 實例隊列進程
              Oracle RAC一般也可構建于大型SMP主機,IBM的AIX系列服務器往往是其中高端平臺,Intel Linux往往作為其低端平臺。當AIXUNIX用來運行Oracle RAC作為大型數據庫系統平臺時,其集群系統構建、實施、運維、高可用設置,有其平臺特點。可以參照《Oracle大型數據庫系統在AIX/UNIX上的實戰詳解》,該書以AIX UNIX平臺為主線,以其他UNIX系統為參照,描述了數據庫系統Oracle 10g、Oracle 11g的RAC的構架方法和過程。在Linux平臺,則《大話OracleRAC集群、高可用性、備份與恢復》有著很好的論述。


              国产精品不卡一区二区