国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種數(shù)據(jù)庫(kù)模式切換的方法及裝置的制作方法

      文檔序號(hào):6462017閱讀:235來(lái)源:國(guó)知局
      專利名稱:一種數(shù)據(jù)庫(kù)模式切換的方法及裝置的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及數(shù)據(jù)庫(kù)技術(shù)領(lǐng)域,特別是涉及一種數(shù)據(jù)庫(kù)模式切換的方法及裝置。
      背景技術(shù)
      隨著辦公自動(dòng)化和電子商務(wù)的飛速發(fā)展,企業(yè)對(duì)信息系統(tǒng)的依賴性越來(lái)越 高,數(shù)據(jù)庫(kù)作為信息系統(tǒng)的核心擔(dān)當(dāng)著重要的角色。尤其在一些對(duì)數(shù)據(jù)可靠性 要求很高的行業(yè)如銀行、證券、電信等,如果發(fā)生意外停機(jī)或數(shù)據(jù)丟失等災(zāi)難, 其損失會(huì)十分慘重。為此數(shù)據(jù)庫(kù)管理員應(yīng)針對(duì)具體的業(yè)務(wù)要求制定詳細(xì)的數(shù)據(jù) 庫(kù)備份與災(zāi)難恢復(fù)策略,以保證數(shù)據(jù)的高可用性。
      現(xiàn)有技術(shù)通常使用數(shù)據(jù)保護(hù)(Data guard)體系來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)備份與突 難恢復(fù)策略。在Data guard體系中,包括一個(gè)主數(shù)據(jù)庫(kù)和至少一個(gè)備用數(shù)據(jù) 庫(kù)。應(yīng)用端服務(wù)器連接到主數(shù)據(jù)庫(kù),進(jìn)行數(shù)據(jù)讀寫(xiě)訪問(wèn);主數(shù)據(jù)庫(kù)因數(shù)據(jù)變化, 會(huì)生成日志文件(Log),并將生成的日志文件通過(guò)網(wǎng)絡(luò)傳遞到備用數(shù)據(jù)庫(kù),備 用數(shù)據(jù)庫(kù)利用從主庫(kù)傳遞過(guò)來(lái)的日志文件,達(dá)到與主數(shù)據(jù)庫(kù)相同的數(shù)據(jù)狀態(tài), 實(shí)現(xiàn)數(shù)據(jù)同步。
      參見(jiàn)圖1, Data guard體系主要分為兩部分?jǐn)?shù)據(jù)中心主站點(diǎn)及同城數(shù) 據(jù)容災(zāi)中心。^叚設(shè)在數(shù)據(jù)中心主站點(diǎn)與同城數(shù)據(jù)容災(zāi)中心^^包括四個(gè)數(shù)據(jù)庫(kù), 其中Dbl—pri,Db2_pri,Db3_pri,Db4_pri都處于主模式,這些數(shù)據(jù)庫(kù)都處于數(shù) 據(jù)中心主站點(diǎn),通過(guò)光纖交換機(jī)U103、 U104共用一臺(tái)高端存儲(chǔ)U101,對(duì)外提 供服務(wù);Dbl_stb,Db2_stb,Db3_stb,Db4-stb都處于備用模式,這些數(shù)據(jù)庫(kù)都 存儲(chǔ)于同城數(shù)據(jù)容災(zāi)中心,通過(guò)光纖交換機(jī)U105、 U106共用一臺(tái)高端存儲(chǔ) U102,應(yīng)用從對(duì)應(yīng)主庫(kù)傳遞過(guò)來(lái)的日志。
      數(shù)據(jù)中心主站點(diǎn)利用Data guard技術(shù),通過(guò)同城網(wǎng)絡(luò)不斷地向同城數(shù)據(jù) 容災(zāi)中心傳遞日志文件,同城數(shù)據(jù)容災(zāi)中心的 Dbl_stb,Db2_stb, Db3—stb, Db4 — stb幾臺(tái)物理備用凝:才居庫(kù)不斷應(yīng)用/人對(duì)應(yīng)主庫(kù)Dbl-pri,Db2-pri,Db3—pri,Db4-pri傳遞過(guò)來(lái)的日志文件,進(jìn)行數(shù)據(jù)恢復(fù), 達(dá)到與主數(shù)據(jù)庫(kù)數(shù)據(jù)同步的狀態(tài)。
      從以上現(xiàn)有技術(shù)可以看出,數(shù)據(jù)中心主站點(diǎn)的數(shù)據(jù)庫(kù)都處于主模式狀態(tài), 所有的應(yīng)用服務(wù)器都會(huì)連接到數(shù)據(jù)中心主站點(diǎn)的數(shù)據(jù)庫(kù)進(jìn)行讀寫(xiě)訪問(wèn),為客戶 提供服務(wù)。同城數(shù)據(jù)容災(zāi)中心的數(shù)據(jù)庫(kù)都處于備用模式狀態(tài),它們只是應(yīng)用從 數(shù)據(jù)中心主站點(diǎn)主庫(kù)傳遞過(guò)來(lái)的日志,這些數(shù)據(jù)庫(kù)所使用的主機(jī)及高端存儲(chǔ)基 本處于閑置狀態(tài)。隨著聯(lián)機(jī)事物處理(on-line transaction processing, OLTP ) 業(yè)務(wù)的高速發(fā)展,由于在數(shù)據(jù)中心主站點(diǎn),多個(gè)數(shù)據(jù)庫(kù)共用 一臺(tái)高端存儲(chǔ)設(shè)備, 這臺(tái)共用的高端存儲(chǔ)設(shè)備會(huì)很快成為整個(gè)系統(tǒng)的瓶頸。另一方面,由于數(shù)據(jù)中 心主站點(diǎn)所使用的高端存儲(chǔ)處于超負(fù)荷運(yùn)行狀態(tài),而數(shù)據(jù)容災(zāi)中心的高端存儲(chǔ) 卻處于閑置狀態(tài),造成了嚴(yán)重的資源浪費(fèi)。數(shù)據(jù)中心的主站點(diǎn)的高端存儲(chǔ)因其 承擔(dān)所有的業(yè)務(wù)訪問(wèn)壓力,執(zhí)行應(yīng)用服務(wù)器的請(qǐng)求時(shí)間過(guò)長(zhǎng),無(wú)法滿足高速增 長(zhǎng)的業(yè)務(wù)發(fā)展需求。

      發(fā)明內(nèi)容
      有鑒于此,本發(fā)明的目的在于提供一種數(shù)據(jù)庫(kù)模式切換的方法及裝置,以 解決現(xiàn)有技術(shù)中處于主模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)壓力過(guò)大的問(wèn)題。
      為實(shí)現(xiàn)上述目的,本發(fā)明提供了如下方案 一種數(shù)據(jù)庫(kù)模式切換的方法,包括
      確定處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS,以及 各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS;
      選擇至少一個(gè)處于主模式的數(shù)據(jù)庫(kù),計(jì)算選擇的各處于主模式的數(shù)據(jù)庫(kù)的 最大I0PS之和,得到第一數(shù)值;
      判斷所述第一數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ) 能夠承受的最大IOPS;
      如果是,則將選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的 處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      其中,如果再次進(jìn)行數(shù)據(jù)庫(kù)模式的切換,還包括再次選擇至少 一個(gè)原處于主模式的數(shù)據(jù)庫(kù); 計(jì)算再次選擇的各數(shù)據(jù)庫(kù)的最大IOPS之和,得到第二數(shù)值; 計(jì)算所述第 一數(shù)值和所述第二數(shù)值之和,得到第三數(shù)值; 判斷所述第三數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)
      能夠承受的最大IOPS;
      如果是,則將再次選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)
      應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      其中,在選擇至少一個(gè)處于主模式的數(shù)據(jù)庫(kù)之前,還包括 確定處于主模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS; 計(jì)算各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,并計(jì)算所述處于主模式的
      數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS與各處于主模式的數(shù)據(jù)庫(kù)的最大
      IOPS之和的差值;
      判斷所述差值是否小于等于預(yù)置閾值,如果是,進(jìn)入所述選擇至少一個(gè)處 于主模式的數(shù)據(jù)庫(kù)的步驟。 其中,還包括
      應(yīng)用服務(wù)器連接到切換后處于主模式的數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)傳輸;
      切換后處于主^^莫式的凄t據(jù)庫(kù)生成日志文件,并將所述日志文件傳遞給對(duì)應(yīng) 的切換后處于備用模式的數(shù)據(jù)庫(kù);
      切換后處于備用模式的數(shù)據(jù)庫(kù)利用所述日志文件進(jìn)行數(shù)據(jù)恢復(fù),達(dá)到與對(duì) 應(yīng)的切換后處于主模式的lt據(jù)庫(kù)同步的狀態(tài)。
      其中
      利用數(shù)據(jù)保護(hù)技術(shù)將選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將 對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      其中當(dāng)處于主模式的數(shù)據(jù)庫(kù)對(duì)應(yīng)多個(gè)處于備用模式的數(shù)據(jù)庫(kù)時(shí),選擇其 中 一個(gè)處于備用模式的數(shù)據(jù)庫(kù)進(jìn)行模式的相互切換。
      一種數(shù)據(jù)庫(kù)模式切換的裝置,包括
      最大IOPS確定單元,用于確定處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能 夠承受的最大IOPS,以及各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS; 數(shù)據(jù)庫(kù)選擇單元,用于選擇至少一個(gè)處于主模式的數(shù)據(jù)庫(kù);計(jì)算單元,用于計(jì)算選擇的各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,得 到第一數(shù)值;
      判斷單元,判斷所述第一數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的 高端存儲(chǔ)能夠承受的最大IOPS;
      模式切換單元,用于當(dāng)所述判斷單元判斷結(jié)果為是時(shí),將所述選擇的各處 于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為 主模式。
      其中,
      所述數(shù)據(jù)庫(kù)選擇單元還用于再次選擇至少一個(gè)原處于主模式的數(shù)據(jù)庫(kù); 所述計(jì)算單元還用于計(jì)算再次選擇的各數(shù)據(jù)庫(kù)的最大IOPS之和,得到
      第二數(shù)值;并計(jì)算所述第一數(shù)值和所述第二數(shù)值之和,得到第三數(shù)值;
      所述判斷單元還用于判斷所述第三數(shù)值是否小于所述處于備用模式的數(shù)
      據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS;
      所述模式切換單元還用于當(dāng)所述判斷單元判斷結(jié)果為是時(shí),將再次選擇 的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù) 切換為主模式。
      其中,
      所述最大IOPS確定單元還用于確定處于主模式的數(shù)據(jù)庫(kù)共享的高端存 儲(chǔ)能夠承受的最大IOPS;
      所述計(jì)算單元還用于計(jì)算各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,并 計(jì)算所述處于主模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS與各處于 主模式的數(shù)據(jù)庫(kù)的最大IOPS之和的差值;
      所述判斷單元還用于判斷所述差值是否小于預(yù)置閾值,如果是,觸發(fā)所 述數(shù)據(jù)庫(kù)選4奪單元進(jìn)行所述選擇至少 一個(gè)處于主才莫式的數(shù)據(jù)庫(kù)的步驟。
      其中所述模式切換單元利用數(shù)據(jù)保護(hù)技術(shù)將選擇的各處于主模式的數(shù)據(jù) 庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      其中當(dāng)處于主模式的數(shù)據(jù)庫(kù)對(duì)應(yīng)多個(gè)處于備用模式的數(shù)據(jù)庫(kù)時(shí),所述數(shù) 據(jù)庫(kù)選擇單元選擇其中一個(gè)處于備用模式的數(shù)據(jù)庫(kù)進(jìn)行模式的相互切換。
      根據(jù)本發(fā)明提供的具體實(shí)施例,本發(fā)明公開(kāi)了以下技術(shù)效果首先本發(fā)明實(shí)施例通過(guò)將業(yè)務(wù)壓力分布在處于主模式的數(shù)據(jù)庫(kù)共享的高 端存儲(chǔ)和處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)上,緩解了處于主模式的數(shù)據(jù)
      庫(kù)共享的高端存儲(chǔ)的壓力,使得整個(gè)0LTP業(yè)務(wù)在有限的硬件資源的條件下仍 然可以健康穩(wěn)定的運(yùn)行。同時(shí),使得硬件資源得到充分的利用,節(jié)約了硬件投 資成本。
      其次,即使當(dāng)共享同一高端存儲(chǔ)的全部數(shù)據(jù)庫(kù)都發(fā)生災(zāi)難時(shí),也只需要對(duì) 處于備用模式的數(shù)據(jù)庫(kù)做盡可能的日志補(bǔ)齊或數(shù)據(jù)恢復(fù),而不需要對(duì)全部數(shù)據(jù) 庫(kù)進(jìn)行日志補(bǔ)齊或數(shù)據(jù)恢復(fù)。


      圖l是現(xiàn)有技術(shù)數(shù)據(jù)保護(hù)體系的示意圖; 圖2是本發(fā)明實(shí)施例一提供的方法的流程圖; 圖3是本發(fā)明實(shí)施例數(shù)據(jù)保護(hù)體系的示意圖; 圖4是本發(fā)明實(shí)施例二提供的方法的流程圖; 圖5是本發(fā)明實(shí)施例三提供的方法的流程圖; 圖6是本發(fā)明實(shí)施例提供的裝置的示意圖。
      具體實(shí)施例方式
      本發(fā)明實(shí)施例對(duì)數(shù)據(jù)庫(kù)才莫式進(jìn)行切換的方法是將原來(lái)的主數(shù)據(jù)庫(kù)切換成 備用數(shù)據(jù)庫(kù),原來(lái)的備用數(shù)據(jù)庫(kù)切換成主數(shù)據(jù)庫(kù);切換后,應(yīng)用服務(wù)器會(huì)自動(dòng) 連接到切換后處于主模式的數(shù)據(jù)庫(kù)進(jìn)行讀寫(xiě)訪問(wèn),此時(shí)處于主模式的數(shù)據(jù)庫(kù)產(chǎn) 生日志文件,并將產(chǎn)生的日志文件通過(guò)網(wǎng)絡(luò)傳遞給切換后處于備用模式的數(shù)據(jù) 庫(kù),切換后處于備用模式的數(shù)據(jù)庫(kù)應(yīng)用這些日志文件,來(lái)達(dá)到數(shù)據(jù)的同步。本 發(fā)明實(shí)施例針對(duì)這一特點(diǎn),對(duì)現(xiàn)有Data guard體系進(jìn)行改進(jìn),將一些主;f莫式 的數(shù)據(jù)庫(kù)從數(shù)據(jù)中心主站點(diǎn)切換到同城容交中心,以期降j氐數(shù)據(jù)中心主站點(diǎn)的 存儲(chǔ)壓力。下面對(duì)本發(fā)明實(shí)施例提供的方法進(jìn)行詳細(xì)的描述。
      實(shí)施例一、參見(jiàn)圖2,本發(fā)明實(shí)施例所提供的方法包括以下步驟
      S201:確定處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS,以及各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS;
      S202:選擇至少一個(gè)處于主模式的數(shù)據(jù)庫(kù),計(jì)算選擇的各處于主模式的數(shù) 據(jù)庫(kù)的最大IOPS之和,得到第一數(shù)值;
      S203:判斷所述第一數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的高端 存儲(chǔ)能夠承受的最大IOPS;
      每秒輸入/輸出次數(shù)(I/O Per Second, IOPS)指的是系統(tǒng)在單位時(shí)間內(nèi) 能夠處理的最大的I/O頻度,是體現(xiàn)存儲(chǔ)系統(tǒng)性能的最主要的指標(biāo)。在data guard體系中,對(duì)于處于主模式的數(shù)據(jù)庫(kù)而言也會(huì)受到最大IOPS的限制,一 個(gè)處于主模式的數(shù)據(jù)庫(kù)在輸入或輸出數(shù)據(jù)時(shí),不會(huì)超過(guò)這個(gè)限制;而各個(gè)處于 主模式的數(shù)據(jù)庫(kù)共享一個(gè)高端存儲(chǔ),因此這個(gè)高端存儲(chǔ)的IOPS為各處于主模 式的數(shù)據(jù)庫(kù)的IOPS之和。對(duì)于處于備用模式的數(shù)據(jù)庫(kù)而言,由于只需接收從 處于主模式的數(shù)據(jù)庫(kù)傳遞過(guò)來(lái)的日志文件,不存在與應(yīng)用服務(wù)器之間的數(shù)據(jù)傳 輸,因此在主模式的數(shù)據(jù)庫(kù)與應(yīng)用服務(wù)器進(jìn)行數(shù)據(jù)交互時(shí),處于備用模式的數(shù) 據(jù)庫(kù)的只產(chǎn)生很小的IOPS值,因此處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)的 IOPS也很小,這也就是同城數(shù)據(jù)容突中心基本閑置的體現(xiàn)。
      由于將處于主模式的數(shù)據(jù)庫(kù)切換為備用模式后,相應(yīng)的處于備用模式的數(shù) 據(jù)庫(kù)會(huì)切換為主模式,這些切換后為主模式的數(shù)據(jù)庫(kù)會(huì)與應(yīng)用服務(wù)器進(jìn)行數(shù)據(jù) 的傳輸,使得原處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)的IOPS等于該切換為 主模式的數(shù)據(jù)庫(kù)的IOPS;當(dāng)然,也可能同時(shí)將一組處于主模式的數(shù)據(jù)庫(kù)切換 為備用模式,則原處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)的IOPS等于各切換 為主模式的數(shù)據(jù)庫(kù)的IOPS之和。在data guard體系中,通常處于備用模式的 數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)比處于主模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)的性能要差,因 此在選擇進(jìn)行切換的數(shù)據(jù)庫(kù)時(shí),要考慮原備用模式數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)所能 承受的最大IOPS的限制。所以,在本發(fā)明實(shí)施例中,在選擇待切換的數(shù)據(jù)庫(kù) 組合時(shí),要保證各最大IOPS之和小于備用模式數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承 受的IOPS最大值。
      例如,處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)所能承受的最大IOPS是 25000;各處于主模式的數(shù)據(jù)庫(kù)Dbl最大IOPS為14000; Db2最大IOPS為12000; Db3最大IOPS為6000; Db4最大IOPS為4000;
      則選擇的進(jìn)行模式切換的數(shù)據(jù)庫(kù)組合可以是Db3和Db4,因?yàn)镈b3和Db4 的最大IOPS分別為6000和4000,其和為10000,小于處于備用^t式的數(shù)據(jù)庫(kù) 共享的高端存儲(chǔ)所能承受的最大IOPS: 25000;同理,也可以選擇Db2和Db4 或Db2、 DB3和DB4等組成的其它組合,只要保證組成每個(gè)組合的各個(gè)數(shù)據(jù)庫(kù) 的最大IOPS之和小于原備用模式數(shù)據(jù)庫(kù)共存的高端存儲(chǔ)所能承受的最大IOPS 即可。
      S204:如果是,則將選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將 對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      參見(jiàn)圖3,假設(shè)進(jìn)行模式切換的數(shù)據(jù)庫(kù)為Db3和Db4,則將Db3和Db4的 主模式從數(shù)據(jù)中心主站點(diǎn)切換到同城數(shù)據(jù)容災(zāi)中心,在圖3中,也就是分別將 Db3_pri、 Db4_pri切才灸為Db3 — stb、 Db4_stb,同時(shí)Db3 —stb、 Db4 — stb切^奐為 Db3-pri、 Db4_pri,可以用Database牙支術(shù)來(lái)實(shí)現(xiàn)這一切換。
      切換后,在數(shù)據(jù)中心主站點(diǎn),Dbl-pri,Db2—pri處于主模式,對(duì)外提供服 務(wù);Db3_stb, Db4_stb處于備用模式,只作數(shù)據(jù)恢復(fù),不對(duì)外提供服務(wù)。
      在同城數(shù)據(jù)容災(zāi)中心,Dbl —stb, Db2_stb處于備用才莫式,只作數(shù)據(jù)恢復(fù),不 對(duì)外提供服務(wù);Db3—pri,Db4_pri處于主模式,對(duì)外提供服務(wù)。
      利用上述方法實(shí)現(xiàn)了數(shù)據(jù)庫(kù)模式的切換以后,參見(jiàn)圖3,如果在數(shù)據(jù)中心 主站點(diǎn),各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和仍然很大,仍然會(huì)對(duì)數(shù)據(jù)中 心主站點(diǎn)的高端存儲(chǔ)帶來(lái)很大的壓力,可以再次進(jìn)行數(shù)據(jù)庫(kù)模式的切換,下面 對(duì)這種再次切換的方法進(jìn)行詳細(xì)地描述。
      實(shí)施例二、參見(jiàn)圖4,在進(jìn)行數(shù)據(jù)庫(kù)模式的切換以后,本發(fā)明實(shí)施例提供 的再次切換的方法包括以下步驟
      S401:再次選擇選擇至少一個(gè)原處于主模式的數(shù)據(jù)庫(kù);
      S402:計(jì)算再次選擇的各數(shù)據(jù)庫(kù)的最大IOPS之和,得到第二數(shù)值;
      S"3:計(jì)算所述第一數(shù)值和第二數(shù)值之和,得到第三數(shù)值;
      S404:判斷所述第三數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS;
      S405:如果是,則將再次選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式, 并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      仍然以實(shí)施例一中的例子為例,假設(shè)第一次切換時(shí)將Db3和Db4的主沖莫式 從數(shù)據(jù)中心主站點(diǎn)切換到了同城數(shù)據(jù)容災(zāi)中心,如果數(shù)據(jù)中心主站點(diǎn)還需要進(jìn) 行數(shù)據(jù)庫(kù)模式的切換,則再選擇至少一個(gè)待切換的數(shù)據(jù)庫(kù),比如選擇的為Db2, 計(jì)算Db2、 Db3和Db4的最大IOPS之和,該例中為22000,再與同城數(shù)據(jù)容災(zāi) 中心的高端存儲(chǔ)能夠承受的最大IOPS做比較,該例中由于22000小于25000, 則可以再將Db2的主模式從數(shù)據(jù)中心主站點(diǎn)切換到同城容災(zāi)中心。
      上述方法實(shí)現(xiàn)了數(shù)據(jù)庫(kù)模式的轉(zhuǎn)換,由于本發(fā)明實(shí)施例進(jìn)行的數(shù)據(jù)庫(kù)模式 轉(zhuǎn)換的主要目的是緩解數(shù)據(jù)中心主站點(diǎn)高端存儲(chǔ)的壓力,因此在實(shí)際應(yīng)用中, 可以只有在數(shù)據(jù)中心主站點(diǎn)高端數(shù)據(jù)庫(kù)的壓力較大時(shí)才進(jìn)行數(shù)據(jù)庫(kù)模式的轉(zhuǎn) 換,下面對(duì)此方法進(jìn)行詳細(xì)地描述。
      實(shí)施例三,參見(jiàn)圖5,本發(fā)明實(shí)施例提供的實(shí)現(xiàn)本發(fā)明實(shí)施例的方法包括 以下步驟
      S501:確定處于主模式和備用模式的數(shù)據(jù)庫(kù)分別共享的高端存儲(chǔ)能夠承受 的最大IOPS,以及各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS;
      S502:計(jì)算各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,并計(jì)算所述處于主 模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS與各處于主模式的數(shù)據(jù)庫(kù) 的最大IOPS之和的差值;
      S503:判斷所述差值是否小于(或小于等于)預(yù)置閾值,如果是,進(jìn)入 S504;如果否,退出;
      S504 — S506與S202 — S204相同。
      數(shù)據(jù)中心主站點(diǎn)高端存儲(chǔ)的壓力大小體現(xiàn)在響應(yīng)請(qǐng)求的時(shí)間長(zhǎng)短上。響應(yīng) 請(qǐng)求的時(shí)間會(huì)受到數(shù)據(jù)中心主站點(diǎn)的高端存儲(chǔ)承受的IOPS的影響,高端存儲(chǔ) 承受的IOPS越大,響應(yīng)時(shí)間就越長(zhǎng),反之高端存儲(chǔ)承受的IOPS越小,響應(yīng)時(shí) 間就會(huì)越短。可以根據(jù)實(shí)際情況預(yù)置一個(gè)閾值,使得當(dāng)高端存儲(chǔ)能承受的最大IOPS與各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和的差值大于這個(gè)閾值時(shí),不會(huì)
      使響應(yīng)請(qǐng)求的時(shí)間過(guò)長(zhǎng),在這種情況下可以考慮不對(duì)數(shù)據(jù)庫(kù)的模式進(jìn)行切換。
      由于在實(shí)際應(yīng)用中, 一個(gè)處于主模式的數(shù)據(jù)庫(kù)可能對(duì)應(yīng)多個(gè)處于備用模式 的數(shù)據(jù)庫(kù),此時(shí)本發(fā)明所述的切換只對(duì)這些處于備用模式的數(shù)據(jù)庫(kù)中的 一個(gè)進(jìn) 行一對(duì)一的切換。
      根據(jù)以上所述的方法進(jìn)行數(shù)據(jù)庫(kù)模式的切換后,應(yīng)用服務(wù)器會(huì)自動(dòng)連4妻到 切換后處于主模式的數(shù)據(jù)庫(kù),進(jìn)行數(shù)據(jù)的讀寫(xiě)訪問(wèn),也就是,連接到數(shù)據(jù)中心
      主站點(diǎn)的Dbl一pri,Db2—pri和同城數(shù)據(jù)容災(zāi)中心的Db3一pr i, Db4—pr i ,這些處 于主模式的數(shù)據(jù)庫(kù)在數(shù)據(jù)傳輸?shù)倪^(guò)程中產(chǎn)生日志文件,然后,數(shù)據(jù)中心主站點(diǎn) 的Dbl —pri,Db2_pri將產(chǎn)生的日志文件傳遞給同城婆:據(jù)容災(zāi)中心的Dbl_stb, Db2 —stb;同城數(shù)據(jù)容突中心的Db3_pri, Db4_pri將產(chǎn)生的日志文件傳遞給數(shù) 據(jù)中心主站點(diǎn)的Db3-stb, Db4一stb;處于備用模式的數(shù)據(jù)庫(kù)利用收到的日志 文件,達(dá)到與對(duì)應(yīng)的處于主模式的數(shù)據(jù)庫(kù)相同的數(shù)據(jù)狀態(tài),實(shí)現(xiàn)數(shù)據(jù)同步。
      本發(fā)明實(shí)施例提供的方法,在另一個(gè)層面上來(lái)講,實(shí)現(xiàn)了更高級(jí)別的數(shù)據(jù) 保護(hù)與容災(zāi)能力。采用現(xiàn)有技術(shù)的方法,如果數(shù)據(jù)中心主站點(diǎn)的部分或全部處 于主模式的數(shù)據(jù)庫(kù)發(fā)生災(zāi)難時(shí),由于同城數(shù)據(jù)容災(zāi)中心數(shù)據(jù)庫(kù)與數(shù)據(jù)中心主站 點(diǎn)數(shù)據(jù)庫(kù)中的數(shù)據(jù)有一段時(shí)間的差距,丟失的數(shù)據(jù)量相對(duì)比較多。而采用本發(fā) 明實(shí)施例提供的方法,不管是數(shù)據(jù)中心主站點(diǎn),還是同城數(shù)據(jù)容災(zāi)中心,都有 一部份數(shù)據(jù)庫(kù)是運(yùn)行在主模式狀態(tài),所以即使當(dāng)數(shù)據(jù)中心主站點(diǎn)或者同城數(shù)據(jù) 容災(zāi)中心任何一個(gè)中的全部數(shù)據(jù)庫(kù)都發(fā)生災(zāi)難時(shí),也只有處于備用模式的數(shù)據(jù) 庫(kù)會(huì)丟失一些數(shù)據(jù),而不是全部的數(shù)據(jù)庫(kù)都會(huì)丟數(shù)據(jù),因?yàn)樘幱谥髂J降臄?shù)據(jù) 庫(kù)沒(méi)有任何的數(shù)據(jù)丟失。所以,在這種情況下,只需要對(duì)處于備用模式的數(shù)據(jù) 庫(kù)做盡可能的日志補(bǔ)齊或數(shù)據(jù)恢復(fù),而不需要對(duì)全部數(shù)據(jù)庫(kù)進(jìn)行日志補(bǔ)齊或數(shù) 據(jù)恢復(fù)。
      通過(guò)以上所述可見(jiàn),在數(shù)據(jù)庫(kù)體系結(jié)構(gòu)上已經(jīng)實(shí)現(xiàn)了一種交叉體系結(jié)構(gòu), 將業(yè)務(wù)壓力分布在兩臺(tái)高端存儲(chǔ)上,極大的緩解了數(shù)據(jù)中心主站點(diǎn)高端存儲(chǔ)的 壓力,使得整個(gè)0LTP業(yè)務(wù)在有限的硬件資源的條件下仍然可以健康穩(wěn)定的運(yùn)行。同時(shí),使同城數(shù)據(jù)容災(zāi)中心的硬件資源得到了充分的應(yīng)用,不再是只有在 數(shù)據(jù)中心主站點(diǎn)發(fā)生毀滅性災(zāi)難時(shí),才體現(xiàn)其價(jià)值,而是能夠?yàn)闃I(yè)務(wù)提供服務(wù) 與支持,最大程度地保障了企業(yè)的硬件投資,節(jié)約了硬件投資成本。
      與本發(fā)明實(shí)施例提供的方法相對(duì)應(yīng),本發(fā)明實(shí)施例還提供了 一種數(shù)據(jù)庫(kù)模
      式轉(zhuǎn)換的裝置,參見(jiàn)圖6,該裝置包括
      最大10PS確定單元U601,用于確定處于備用模式的數(shù)據(jù)庫(kù)共享的高端存
      儲(chǔ)能夠承受的最大IOPS,以及各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS; 數(shù)據(jù)庫(kù)選擇單元U602,用于選擇至少一個(gè)處于主模式的數(shù)據(jù)庫(kù); 計(jì)算單元U603,用于計(jì)算選擇的各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,
      得到第一數(shù)值;
      判斷單元U6(M,判斷所述第一數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù) 共享的高端存儲(chǔ)能夠承受的最大IOPS;
      模式切換單元U605,用于當(dāng)所述判斷單元判斷結(jié)果為是時(shí),將所述選擇 的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù) 切換為主模式。
      進(jìn)行數(shù)據(jù)庫(kù)模式的切換時(shí),由最大IOPS確定單元U601確定處于備用模式 的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS,以及各處于主模式的數(shù)據(jù)庫(kù) 的最大IOPS后,數(shù)據(jù)庫(kù)選擇單元U602,選擇至少一個(gè)處于主模式的數(shù)據(jù)庫(kù), 然后由計(jì)算單元U603計(jì)算選擇的各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,得 到第一數(shù)值;判斷單元U604判斷所述第一數(shù)值是否小于所述處于備用模式的 數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS,如果是,模式切換單元'J6G5將 所述選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式
      的數(shù)據(jù)庫(kù)切換為主^:莫式。
      與本發(fā)明實(shí)施例二提供的方法相對(duì)應(yīng),本發(fā)明實(shí)施例提供的裝置中, 數(shù)據(jù)庫(kù)選擇單元U602還用于再次選擇至少一個(gè)原處于主模式的數(shù)據(jù)庫(kù); 計(jì)算單元U603還用于計(jì)算再次選擇的各數(shù)據(jù)庫(kù)的最大IOPS之和,得 到第二數(shù)值;并計(jì)算所述第一數(shù)值和所述第二數(shù)值之和,得到第三數(shù)值;
      判斷單元U604還用于判斷所述第三數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS;
      模式切換單元U605還用于當(dāng)所述判斷單元判斷結(jié)果為是時(shí),將再次選 擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù) 庫(kù)切換為主才莫式。
      與本發(fā)明實(shí)施例三提供的方法相對(duì)應(yīng),本發(fā)明實(shí)施例提供的裝置中, 最大IOPS確定單元U601還用于確定處于主模式的數(shù)據(jù)庫(kù)共享的高端存
      儲(chǔ)能夠承受的最大IOPS;
      計(jì)算單元U603還用于計(jì)算各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,并
      計(jì)算所述處于主模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS與各處于
      主模式的數(shù)據(jù)庫(kù)的最大IOPS之和的差值;
      判斷單元U604還用于判斷所述差值是否小于預(yù)置閾值,如果是,觸發(fā) 所述數(shù)據(jù)庫(kù)選擇單元進(jìn)行所述選擇至少 一個(gè)處于主模式的數(shù)據(jù)庫(kù)的步驟。
      完成切換的過(guò)程由數(shù)據(jù)保護(hù)技術(shù)來(lái)完成時(shí),模式切換單元U605利用數(shù)據(jù) 保護(hù)技術(shù)將選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備 用模式的數(shù)據(jù)庫(kù)切換為主模式。
      當(dāng)處于主模式的數(shù)據(jù)庫(kù)對(duì)應(yīng)多個(gè)處于備用模式的數(shù)據(jù)庫(kù)時(shí),數(shù)據(jù)庫(kù)選擇單 元U602選擇其中一個(gè)處于備用模式的數(shù)據(jù)庫(kù)進(jìn)行模式的相互切換。
      以上對(duì)本發(fā)明所提供的一種數(shù)據(jù)庫(kù)模式轉(zhuǎn)換的方法及裝置,進(jìn)行了詳細(xì)介
      例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的 一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式
      及應(yīng)用范圍上均會(huì)有改變 之處。綜上所述,本il明書(shū)內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。
      權(quán)利要求
      1、一種數(shù)據(jù)庫(kù)模式切換的方法,其特征在于,包括確定處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS,以及各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS;選擇至少一個(gè)處于主模式的數(shù)據(jù)庫(kù),計(jì)算選擇的各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,得到第一數(shù)值;判斷所述第一數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS;如果是,則將選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,如果再次進(jìn)行數(shù)據(jù)庫(kù)模式 的切換,還包括再次選擇至少 一個(gè)原處于主模式的數(shù)據(jù)庫(kù); 計(jì)算再次選擇的各數(shù)據(jù)庫(kù)的最大IOPS之和,得到第二數(shù)值; 計(jì)算所述第 一數(shù)值和所述第二數(shù)值之和,得到第三數(shù)值; 判斷所述第三數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS;如果是,則將再次選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      3、 根據(jù)權(quán)利要求1所述的方法,其特征在于,在選擇至少一個(gè)處于主模 式的數(shù)據(jù)庫(kù)之前,還包括確定處于主模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS;計(jì)算各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,并計(jì)算所述處于主模式的 數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS與各處于主模式的數(shù)據(jù)庫(kù)的最大 IOPS之和的差值;判斷所述差值是否小于等于預(yù)置閾值,如果是,進(jìn)入所述選擇至少一個(gè)處 于主模式的數(shù)據(jù)庫(kù)的步驟。
      4、 根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括應(yīng)用服務(wù)器連接到切換后處于主模式的數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)傳輸;切換后處于主^^莫式的ft據(jù)庫(kù)生成日志文件,并將所述日志文件傳遞給對(duì)應(yīng)的切換后處于備用模式的數(shù)據(jù)庫(kù);切換后處于備用模式的數(shù)據(jù)庫(kù)利用所述日志文件進(jìn)行數(shù)據(jù)恢復(fù),達(dá)到與對(duì) 應(yīng)的切換后處于主模式的數(shù)據(jù)庫(kù)同步的狀態(tài)。
      5、 根據(jù)權(quán)利要求l所述的方法,其特征在于利用數(shù)據(jù)保護(hù)技術(shù)將選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將 對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      6、 根據(jù)權(quán)利要求1所述的方法,其特征在于當(dāng)處于主模式的數(shù)據(jù)庫(kù)對(duì) 應(yīng)多個(gè)處于備用模式的數(shù)據(jù)庫(kù)時(shí),選擇其中一個(gè)處于備用模式的數(shù)據(jù)庫(kù)進(jìn)行模 式的相互切換。
      7、 一種數(shù)據(jù)庫(kù)模式切換的裝置,其特征在于,包括最大IOPS確定單元,用于確定處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能 夠承受的最大IOPS,以及各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS; 數(shù)據(jù)庫(kù)選擇單元,用于選擇至少一個(gè)處于主模式的數(shù)據(jù)庫(kù); 計(jì)算單元,用于計(jì)算選擇的各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,得 到第一數(shù)值;判斷單元,判斷所述第一數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的 高端存儲(chǔ)能夠承受的最大IOPS;模式切換單元,用于當(dāng)所述判斷單元判斷結(jié)果為是時(shí),將所述選擇的各處 于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為 主模式。
      8、 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述數(shù)據(jù)庫(kù)選擇單元還用于再次選擇至少一個(gè)原處于主模式的數(shù)據(jù)庫(kù); 所述計(jì)算單元還用于計(jì)算再次選擇的各數(shù)據(jù)庫(kù)的最大IOPS之和,得到第二數(shù)值;并計(jì)算所述第一數(shù)值和所述第二數(shù)值之和,得到第三數(shù)值;所述判斷單元還用于判斷所述第三數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS;所述模式切換單元還用于當(dāng)所述判斷單元判斷結(jié)果為是時(shí),將再次選擇 的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      9、 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述最大IOPS確定單元還用于確定處于主^^莫式的數(shù)據(jù)庫(kù)共享的高端存 儲(chǔ)能夠承受的最大IOPS;所述計(jì)算單元還用于計(jì)算各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,并 計(jì)算所述處于主模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS與各處于 主模式的數(shù)據(jù)庫(kù)的最大IOPS之和的差值;所述判斷單元還用于判斷所述差值是否小于預(yù)置閾值,如果是,觸發(fā)所 述數(shù)據(jù)庫(kù)選擇單元進(jìn)行所述選擇至少 一個(gè)處于主模式的數(shù)據(jù)庫(kù)的步驟。
      10、 根據(jù)權(quán)利要求7所述的裝置,其特征在于所述模式切換單元利用數(shù) 據(jù)保護(hù)技術(shù)將選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于 備用模式的數(shù)據(jù)庫(kù)切換為主模式。
      11、 根據(jù)權(quán)利要求7所述的裝置,其特征在于當(dāng)處于主模式的數(shù)據(jù)庫(kù)對(duì) 應(yīng)多個(gè)處于備用模式的數(shù)據(jù)庫(kù)時(shí),所述數(shù)據(jù)庫(kù)選擇單元選擇其中一個(gè)處于備用 模式的數(shù)據(jù)庫(kù)進(jìn)行模式的相互切換。
      全文摘要
      本發(fā)明公開(kāi)了一種數(shù)據(jù)庫(kù)模式轉(zhuǎn)換的方法,該方法包括確定處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS,以及各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS;選擇至少一個(gè)處于主模式的數(shù)據(jù)庫(kù),計(jì)算選擇的各處于主模式的數(shù)據(jù)庫(kù)的最大IOPS之和,得到第一數(shù)值;判斷所述第一數(shù)值是否小于所述處于備用模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)能夠承受的最大IOPS;如果是,則將選擇的各處于主模式的數(shù)據(jù)庫(kù)切換為備用模式,并將對(duì)應(yīng)的處于備用模式的數(shù)據(jù)庫(kù)切換為主模式。本發(fā)明還公開(kāi)了一種數(shù)據(jù)庫(kù)模式轉(zhuǎn)換的裝置。通過(guò)本發(fā)明實(shí)施例,緩解了處于主模式的數(shù)據(jù)庫(kù)共享的高端存儲(chǔ)的壓力,同時(shí),使得硬件資源得到充分的利用,節(jié)約了硬件投資成本。
      文檔編號(hào)G06F17/30GK101556585SQ20081008920
      公開(kāi)日2009年10月14日 申請(qǐng)日期2008年4月8日 優(yōu)先權(quán)日2008年4月8日
      發(fā)明者林 趙 申請(qǐng)人:阿里巴巴集團(tuán)控股有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1