999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向異地雙活系統的數據庫改造方法

2020-05-11 11:43:41朱克馬永波徐景龍王雷
微型電腦應用 2020年1期
關鍵詞:數據庫用戶

朱克 馬永波 徐景龍 王雷

摘 要: 國網95598客服中心是國家電網公司供電服務的重要窗口,數據庫分區分域的異地雙活模式可以有效提高95598系統的可靠性。為保障雙活系統的數據安全,95598核心業務系統容災建設方案采用數據庫分區分域的異地雙活技術路線,通過數據庫拆分和重新存儲實現數據庫的改造,并通過奇偶序列及自動生成主鍵的方式實現數據庫的區分及快速存儲,提高數據保護能力,保障其在正常情況及災備狀態下的數據一致性及可靠性。

關鍵詞: 95598系統; 異地雙活模式; 數據庫改造

中圖分類號: TP311 ? ? ?文獻標志碼: A

Database Transformaton Method for Dstrbuted Dual-actve System

ZHU Ke, MA Yongbo, XU Jnglong, WANG Le*

(Servce Center, State Grd Corporaton Customer, Tanjn 300000)

Abstract: The 95598 Customer Servce Center s an mportant wndow for the State Grd Corporaton n provdng power. The relablty of the 95598 system can be effectvely mproved by the dual-actve mode of dstrbuted database. n order to ensure the data securty, the dsaster recovery constructon scheme of the 95598 core busness system adopts the dual-actve techncal route of dstrbuted database. The database s reconstructed by splttng and re-storng, and dstngushed and stored quckly by party sequence and auto-generatng prmary key. Through ths method, the data protecton ablty, the data consstency and relablty under normal and dsaster-preparedness condtons can be guaranteed.

Key words: 95598 system; Dstrbuted dual-actve mode; Database reconstructon

0 引言

國家電網公司客戶服務中心負責承擔各省95598服務工作質量的監督、檢查與評價,為27家省(市)電力公司、4.4億用電客戶、11億人口,提供全國統一標準的95598業務。其數據生產中心為單中心,但由于沒有備用系統能夠支持短時間的切換運行,若各數據庫發生硬件故障,必然將導致較長時間業務的中斷及數據丟失。

為了保障數據的安全性,使得在發生災難的情況下數據庫仍能為客服中心提供穩定可靠的數據來源,95598中心提出異地雙活系統,即在兩地分別設立數據生產中心,27個省公司的業務按照均衡分配至兩個數據生產中心,在業務層面實現負荷分擔;在數據層面上,兩端數據中心更新本地數據庫并向對端進行復制,當任意一方發生災害事件時,另一方可接管所有的業務服務,保障系統業務的連續性。

在異地雙活系統中,原有的單數據庫將數據遷移新設立的對端數據庫中,構建雙活數據庫體系。對于分布式數據庫而言,數據庫之間的數據主要面對弱一致性及數據沖突兩大難題。為了解決數據沖突的問題,兩數據庫按照數據來源進行數據庫的用戶分區;為解決數據一致性問題,在數據復制之前按照一定的規則為不同的數據庫生成序列。

1 設計思想

95598數據庫類型為oracle數據庫,在原數據庫中心包含不同功能的各類數據庫,例業務庫,平臺庫,查詢庫,公共庫等等,這些數據庫共同為業務提供數據支持,故在雙活系統中,為保障各系統中心能獨立承擔業務,原生產中心的數據首先采用數據庫遷移技術在遠程位置上生成另一份相同的數據,當本地數據庫發生故障時,正在訪問數據庫的用戶可利用異地數據庫繼續原有業務,從而構建雙活數據庫系統,減少故障帶來的損失。

雙活數據庫由兩個數據庫中心構成,各數據庫中心為獨立的數據庫系統,包含各自的數據庫,客戶端,中央處理機,數據庫管理系統等,兩個數據中心通過網絡聯結到一起。雙活數據庫系統要實現災備狀態下對任意生產中心業務服務的支持,一般具有以下特性。[1]

(1) 均衡網絡負載

在雙活數據庫中,原數據庫承載的業務按照負載均衡原理分配至兩個數據庫,均衡了網絡負載;同時本地數據庫保存對端數據庫的本地拷貝,從而在災備條件下,應用僅需訪問本地拷貝而不需直接連接到對端數據庫,減少了網絡流量。

(2) 數據一致性

本地數據庫與對端數據庫的數據保持一致,在災備狀態下,可通過對端的數據庫備份恢復數據庫功能。

(3) 數據透明訪問

雙活數據庫在邏輯上為同一系統,應用可根據指令訪問對端數據,在操作過程中與訪問本地數據無異。

(4) 事務完整性

雙活數據庫中任意一個數據庫中心能支持所有事務的操作。

基于此,提出雙活數據庫改造模型,如圖1所示。

原數據庫中心A的各部分各數據庫為保證系統事務完整性必不可少的組成部分,故將其數據遷移至數據庫中心B,且保持結構功能不變。為均衡網絡負載,將數據庫中心A及B中的每個數據庫按照數據來源分為A區數據及B區數據,在正常情況下,各區應用只訪問和維護本區數據,在實現負載均衡的同時方便數據庫管理。當本地數據進行更新后,通過復制技術向對端數據庫進行備份,備份信息填入對應的數據存放區域。在災難狀態下,若本地生產中心無法正常支持服務,但本地數據庫未遭到破壞,則對端數據中心通過用戶權限訪問本地數據中心的數據庫,并進行信息的更改和存儲;若本地數據庫同時遭到破壞,則對端數據中心直接訪問存放在對端數據庫的備用數據來實現業務正常運行。

2 實現方法

2.1 數據庫拆分

Oracle數據庫的存儲結構如圖2所示。

分為邏輯結構及物理結構,其邏輯結構中,數據庫由各表空間組成,每個表空間由段,區,Oracle數據塊等結構結合,在物理結構上,每個表空間可包含多個數據文件。模式對象為數據庫對象的集合,每個數據庫用戶僅對應于一個模式,在Oracle數據庫中通過模式對象引用數據庫的數據。[2]

在數據庫改造模型中,由于改造后的數據庫為各自的生產中心提供業務支持,同時向對端進行復制。為避免數據復制及業務操作作用于相同的數據而存在數據的保存沖突,需要對數據進行邏輯隔離,即雙活兩端同時寫入操作的數據必須保證不同。由圖2可知,為便于對本地數據庫操作的同時接受對端備份的消息,可在用戶層面上對各庫數據進行來源拆分。故在雙活數據庫系統中,數據中心A操作業務的同時將數據更新至用戶A中,與此同時數據中心用戶B中接收來自數據中心B的復制數據。

在原數據中心A中,核心數據庫為業務庫及平臺庫,業務庫保存核心業務支持系統業務辦理的相關數據,平臺庫中保存系統組織結構,人員賬號,人員權限,工作流信息及業務發生過程等相關信息,內含系統維護相關的信息。查詢庫中存儲來自各省市營銷數據信息,并供公共庫,支撐庫及日志庫調取,以滿足業務需求。各數據庫功能如表1所示。

2.2 數據復制

Oracle數據庫的高級復制環境分為多主復制,物化視圖復制和多主復制與物化視圖復制混合環境。多主復制指當網絡中雙活數據庫中任意數據庫的數據對象發生變化,此變化能傳播到其他數據庫中,使得兩端達到數據同步的目的。多主復制分為同步復制和異步復制兩種[3]。物化視圖復制指定物化視圖數據庫進行操作,然后將數據的改變定時對其他數據庫進行更新。

由于異地數據傳輸距離較長(距離1000公里以上),如果采用同步方式進行數據復制,那么就會造成系統的業務操作延時過長,會導致系統性能和服務能力下降,故雙活數據庫采用應用層異步復制的方式。對于報表庫,采用物化視圖復制。

2.2.1 異步復制

異步復制技術,也稱為延遲事務,各數據庫變化的信息將首先被保存到本地數據庫中,當到達數據庫復制的設定時間時,異步復制技術將變化的信息發送至目標數據庫,完成數據復制過程,此種類型的復制技術可以減少遠程訪問代價及網絡通信負載,從而提高系統響應速度。異地雙活數據庫中異地復制過程示意圖,如圖3所示。

其中待復制數據表為數據庫中進行了更新的表。

觸發器為數據庫更新的反映機制,當數據庫中表格進行數據的插入,更新及刪除時,該表上的觸發器將更改的信息寫入簡化的事務日志表中。

數據庫DBMS_ALERT開發包具有通信及報警功能,數據庫觸發器觸發后發送報警信號,用以記錄改變信息的用戶D,修改時間及被修改表名。目標數據庫當收到報警信號后,通過報警信息找到被修改的位置,并進行更新。

延遲事務隊列為暫存在本地數據庫的待更改數據信息,包含事務日志表,用戶D,修改時間等。

2.2.2 物化視圖復制

雙活數據庫中,分布式報表是采用從業務數據庫和平臺數據庫中抽取數據到Hadoop中進行統計,然后再將統計完的數據推送回數據庫,供報表功能查詢展示的模式。由于業務庫和平臺庫用戶進行了拆分,故在在業務數據庫和平臺數據庫下分別創建獨立的用戶,在該用戶下創建視圖,將拆分后的表通過視圖進行關聯,分布式報表的數據抽取程序數據源由原用戶指向到新建的視圖用戶下進行數據抽取。報表統計按原程序執行方式執行,統計后的數據推送到北中心報表庫中。

北中心報表庫與南中心報表庫建立單向復制關系,統計后的報表數據從北中心復制到南中心報表庫。兩個中心報表展示分別連接到各自中心的報表庫查詢,如圖4所示。

2.2.3 數據沖突解決策略

在雙活數據庫的復制技術中,由于缺少實時控制機制,故對數據庫數據的增加,修改可能產生數據沖突,即同一個記錄的拷貝在更新階段被多次添加到不同的數據庫。

為避免數據沖突現象,對各數據庫在用戶和表格層面上進行標記區分,制定統一的序列生成規則,從而當某數據庫中心需要向對端復制數據時,能通過主鍵掃描快速找到對應序列的數據庫,并通過該序列值判斷目的數據庫的位置,進行快速存儲,從而避免記錄多次增添,實現對數據庫存儲及調用的高效管理。具體步驟如下:

1) 各數據庫用戶生成對應序列

由圖1可得,雙活系統中心A,B各有N個對應的數據庫,共2N個數據庫。以x1,x3,x5,…,x2N-1標記A中心各數據庫,以x2,x4,x6,…,x2N標記B中心各數據庫,且A中心的x與B中心的x+1為同名數據庫。每個數據庫按照業務功能區分為多個用戶,各數據庫中存儲本系統中心的數據,同時存儲來自對端系統中心對應數據庫中的數據。x中的第j個用戶以aj表示,各用戶按式(1)生成序列。yj=+(2N)·(j-1)

(1) ?2) 各用戶對應數據表生成主鍵

主鍵為數據庫的數據表中具有標識作用的一行,能表征此表的屬性或屬性組,為各數據表建立主鍵聯系能使數據庫的復制和檢索帶來便捷,同時避開鍵值的矛盾區域,從而保證雙活數據庫數據的一致性。各用戶表格首先按照公式(1)生成序列,然后將序列值以二進制的形式填入主鍵中。部分數據表主鍵值如表2所示。

此總自動編號的方法避免了手工輸入序列的繁瑣步驟,且隨著數據庫的擴大,主鍵值能自動完成編號,并將結果反饋給數據庫。

2.3 數據庫訪問

在Oracle數據庫中,將應用程序統稱為數據庫客戶端,數據庫通過數據庫服務器進行管理,每個數據庫對應一個Oracle服務實例,由數據庫服務實例完成對相應Oracle數據庫的訪問操作。由于雙活系統將每個數據庫按照數據來源分為兩個用戶,故為了避免數據沖突,每個數據庫設置兩個服務實例,分別負責本地數據和備用數據的訪問。其過程如圖5所示。[4]

(1) 數據庫客戶端根據Oracle數據庫服務器地址與其建立連接。

(2) 連接建立后,客戶端發送會話請求報文,數據庫服務器根據報文中的目標數據庫P地址及全局服務標志,發送至對應的數據庫實例中。若為正常狀態,目標數據庫實例為本地實例,若為災備狀態,目標數據庫實例為對端實例。

(3) 監聽器監測目標數據庫實例準備工作是否完成,若監測到準備工作完成,則向客戶端返回重定向報文,若準備工作失敗,則返回拒絕報文,會話結束。

(4) 客戶端接收反饋報文。若為拒絕報文,則客戶端將返回拒絕原因結束會話;若為重定向報文,客戶端將根據報文選擇新的目標地址,再次連接服務器并建立會話請求。

(5) 服務實例接收客戶端的請求,并檢驗用戶的合法身份,若用戶身份合法,則會話建立成功,用戶在此基礎上對目標數據庫執行SQL操作,二者之間開始通信,反之,連接斷開。

(6) 當客戶端或服務器提出結束會話,則確認后斷開連接。

在正常狀態下,客戶端訪問數據庫服務器的本地實例;在對端數據庫發生異常情況下,客戶端訪問數據庫服務器的對端用戶實例,對其數據進行訪問,完成對端業務服務,從而保障整個系統的穩定性。3 總結

本文介紹了95598異地雙活系統中數據庫的改造方法,數據庫采用用戶拆分及數據備份等方法保障了本地數據的安全性,在災難發生時,系統可通過切換用戶登錄對應中心系統進行業務操作。在災備環境下測試的結果顯示雙活數據庫能實現數據一致性、完整性保障及關鍵業務數據本地保護,保證了用戶業務的連續性。

參考文獻

[1] 賴如勤. 基于Redo log的復制技術實現跨平臺的數據庫容災應用研究[J]. 電子設計工程, 2017, 25(2):5-8.

[2] 朱濤, 郭進偉, 周歡,等. 分布式數據庫中一致性與可用性的關系[J]. 軟件學報, 2018(1):131-149.

[3] 夏彬. 基于Oracle高級復制功能的數據庫同步研究與應用[J]. 信息系統工程, 2015(3):87.

[4] 謝萌. 基于Oracle數據庫的網絡安全訪問機制的分析[J]. 通訊世界, 2016(9):23-24.

(收稿日期: 2018.10.23)

作者簡介:朱克(1985-),男,中級工程師,博士,研究方向:電力企業信息化管理、電力自動化。

馬永波(1981-),男,中級工程師,學士,研究方向:電力企業信息化管理、電力自動化。

徐景龍(1984-),男,初級工程師,學士,研究方向:電力企業信息化管理、電力自動化。

王雷(1981-)(通信作者),男,初級工程師,學士,研究方向:電力企業信息化管理、電力自動化。文章編號:1007-757X(2020)01-0120-03

猜你喜歡
數據庫用戶
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 日韩专区第一页| 亚洲熟妇AV日韩熟妇在线| 57pao国产成视频免费播放 | 中文字幕日韩久久综合影院| 色亚洲激情综合精品无码视频| 亚洲91在线精品| 国外欧美一区另类中文字幕| 亚洲一区二区黄色| 久久不卡国产精品无码| 欧美一级高清片欧美国产欧美| 99免费视频观看| 美女国内精品自产拍在线播放 | 第一区免费在线观看| 91啦中文字幕| 国产真实乱子伦精品视手机观看 | 亚洲系列无码专区偷窥无码| 亚瑟天堂久久一区二区影院| jijzzizz老师出水喷水喷出| 日韩一区二区三免费高清| 国产欧美日本在线观看| 免费毛片网站在线观看| 国产91线观看| 91色爱欧美精品www| 老司机精品久久| 国产亚洲精品无码专| 国产H片无码不卡在线视频| 日韩av无码精品专区| 九九视频免费在线观看| 99免费视频观看| 国产女人在线视频| 麻豆国产精品一二三在线观看| 中文字幕无码中文字幕有码在线 | 国产一二三区视频| 伊人色在线视频| 亚洲天堂成人| 视频一本大道香蕉久在线播放| 亚洲精选无码久久久| 九九九精品成人免费视频7| 一级毛片免费播放视频| 五月激情婷婷综合| 久久久久人妻一区精品色奶水| 无码人妻热线精品视频| 久久综合国产乱子免费| 2020国产免费久久精品99| 99爱在线| 黄色国产在线| 国产一级一级毛片永久| 成年av福利永久免费观看| 亚洲男人的天堂久久香蕉网| 久久中文无码精品| 欧美成人一级| 美女视频黄频a免费高清不卡| 99re热精品视频中文字幕不卡| 亚洲天堂啪啪| 欧美成人一级| 国产无遮挡裸体免费视频| 日韩天堂在线观看| 熟女成人国产精品视频| 91小视频在线| 国产91av在线| 综合色在线| 亚洲人精品亚洲人成在线| 在线国产欧美| 91欧美在线| 在线精品亚洲一区二区古装| 国产精品手机在线观看你懂的| 免费无码AV片在线观看中文| 国产麻豆福利av在线播放| 欧美亚洲日韩中文| 91毛片网| 一级全黄毛片| 成人中文字幕在线| 一本久道热中字伊人| 性欧美精品xxxx| 久久黄色一级视频| 国产在线自乱拍播放| 91亚洲精品国产自在现线| 国产乱人伦偷精品视频AAA| 婷婷午夜天| 亚洲AⅤ波多系列中文字幕| 免费看的一级毛片| 色综合中文综合网|