專利名稱:一種數(shù)據(jù)同步處理方法、裝置和單點(diǎn)登錄系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于數(shù)據(jù)處理領(lǐng)域,尤其涉及一種數(shù)據(jù)同步處理方法、裝置和單點(diǎn) 登錄系統(tǒng)。
背景技術(shù):
隨著信息技術(shù)和網(wǎng)絡(luò)技術(shù)在組織結(jié)構(gòu)中的廣泛應(yīng)用,很多單位或者企業(yè)都 已經(jīng)擁有了各種各樣的應(yīng)用系統(tǒng),如辦公自動(dòng)化系統(tǒng)、人力資源管理系統(tǒng)、財(cái) 務(wù)系統(tǒng)、客戶關(guān)系管理系統(tǒng)、企業(yè)進(jìn)銷存系統(tǒng)等各種業(yè)務(wù)應(yīng)用系統(tǒng)。在企業(yè)的 各種應(yīng)用系統(tǒng)中,為了保證各應(yīng)用系統(tǒng)中數(shù)據(jù)的準(zhǔn)確性和穩(wěn)定性, 一般需要將
兩個(gè)甚至多個(gè)翁:據(jù)源的翁:據(jù)進(jìn)行同步,如將其中一個(gè)數(shù)據(jù)源(稱為參考數(shù)據(jù)源) 中的數(shù)據(jù)同步到另外一個(gè)甚至多個(gè)數(shù)據(jù)源(稱為目標(biāo)數(shù)據(jù)源)中。如在單點(diǎn)登 錄系統(tǒng)中,就需要在應(yīng)用系統(tǒng)上線使用前,將域系統(tǒng)中的數(shù)據(jù)同步到應(yīng)用系統(tǒng) 中(也稱為初始化到應(yīng)用系統(tǒng)中),在應(yīng)用系統(tǒng)上線使用后,將應(yīng)用系統(tǒng)中的 數(shù)據(jù)同步到域系統(tǒng)中,以保證應(yīng)用系統(tǒng)和域系統(tǒng)的正確性和穩(wěn)定性。
在將參考數(shù)據(jù)源中的數(shù)據(jù)同步到一個(gè)或者多個(gè)目標(biāo)數(shù)據(jù)源中時(shí),如將應(yīng)用 系統(tǒng)中的數(shù)據(jù)同步到域系統(tǒng)中時(shí),當(dāng)應(yīng)用系統(tǒng)與域系統(tǒng)之間的網(wǎng)絡(luò)發(fā)生故障(如 網(wǎng)絡(luò)連接斷開或域系統(tǒng)宕機(jī)等),導(dǎo)致應(yīng)用系統(tǒng)與域系統(tǒng)之間的通信中斷,如 果用戶在應(yīng)用系統(tǒng)與域系統(tǒng)之間的通信被中斷后對(duì)應(yīng)用系統(tǒng)中的數(shù)據(jù)進(jìn)行了操 作(如添加、刪除、修改等),則由于應(yīng)用系統(tǒng)與域系統(tǒng)之間的通信已中斷, 從而無(wú)法將應(yīng)用系統(tǒng)中的數(shù)據(jù)同步到域系統(tǒng)中,導(dǎo)致應(yīng)用系統(tǒng)中的數(shù)據(jù)與域系 統(tǒng)中的數(shù)據(jù)存在差異,這將給應(yīng)用系統(tǒng)操作和域系統(tǒng)操作帶來(lái)不可預(yù)知的錯(cuò)誤, 降低了應(yīng)用系統(tǒng)和域系統(tǒng)的正確性和穩(wěn)定性。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種數(shù)據(jù)同步處理方法,旨在解決現(xiàn)有的數(shù) 據(jù)同步處理方法存在的需要進(jìn)行數(shù)據(jù)同步的各個(gè)系統(tǒng)中數(shù)據(jù)存在差異,造成數(shù) 據(jù)的正確性和穩(wěn)定性低的問題。
本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的, 一種數(shù)據(jù)同步處理方法,所述方法包括下述
步驟
A、 在參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信被中斷時(shí),實(shí)時(shí)記錄參考數(shù)據(jù) 源中數(shù)據(jù)的變更狀態(tài);
B、 當(dāng)參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信恢復(fù)時(shí),根據(jù)參考數(shù)據(jù)源中數(shù) 據(jù)的變更狀態(tài)將參考凝:據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中。
本發(fā)明實(shí)施例的另 一 目的在于提供一種數(shù)據(jù)同步處理裝置,所述裝置包括
數(shù)據(jù)源控制器,用于監(jiān)測(cè)參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信狀態(tài),所述 通信狀態(tài)包括通信中斷和通信正常。
變更狀態(tài)記錄單元,用于在所述數(shù)據(jù)源控制器監(jiān)測(cè)到參考數(shù)據(jù)源與目標(biāo)數(shù) 據(jù)源之間的通信狀態(tài)為通信中斷時(shí),實(shí)時(shí)記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài);
數(shù)據(jù)同步處理單元,用于在所述數(shù)據(jù)源控制器監(jiān)測(cè)到參考數(shù)據(jù)源與目標(biāo)數(shù) 據(jù)源之間的通信狀態(tài)為通信正常時(shí),根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將參考 數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中。
本發(fā)明實(shí)施例的另一目的在于提供一種單點(diǎn)登錄系統(tǒng),所述單點(diǎn)登錄系統(tǒng) 包括所述數(shù)據(jù)同步處理裝置。
在本發(fā)明實(shí)施例中,在將參考數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源時(shí),通過 實(shí)時(shí)記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài),在參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源恢復(fù)通信 后,根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中,以保證參 考數(shù)據(jù)源中的數(shù)據(jù)與目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的一致性和同步,提高參考數(shù)據(jù)源和目 標(biāo)數(shù)據(jù)源的準(zhǔn)確性和穩(wěn)定性。
圖l是本發(fā)明實(shí)施例提供的數(shù)據(jù)同步處理方法的實(shí)現(xiàn)流程圖; 圖2是本發(fā)明實(shí)施例提供的單點(diǎn)登錄系統(tǒng)中的數(shù)據(jù)同步處理方法的實(shí)現(xiàn)流 程圖3是本發(fā)明實(shí)施例提供的數(shù)據(jù)同步處理裝置的結(jié)構(gòu)框圖。
具體實(shí)施例方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí) 施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅 僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
在本發(fā)明實(shí)施例中,在將參考數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源時(shí),通過 實(shí)時(shí)記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài),在參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源恢復(fù)通信 后,根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中,以保證參 考數(shù)據(jù)源中的數(shù)據(jù)與目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的同步,提高參考數(shù)據(jù)源和目標(biāo)數(shù)據(jù)源 的準(zhǔn)確性和穩(wěn)定性。
圖1示出了本發(fā)明實(shí)施例提供的數(shù)據(jù)同步處理方法的實(shí)現(xiàn)流程,詳述如下 在步驟S101中,在參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信被中斷時(shí),實(shí)時(shí)記 錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)。
在本發(fā)明實(shí)施例中,實(shí)時(shí)監(jiān)測(cè)業(yè)務(wù)對(duì)參考數(shù)據(jù)源中的數(shù)據(jù)的操作事件,當(dāng) 監(jiān)測(cè)業(yè)務(wù)對(duì)參考數(shù)據(jù)源中的數(shù)據(jù)的操作事件時(shí),如監(jiān)測(cè)到業(yè)務(wù)對(duì)參考數(shù)據(jù)源中 的數(shù)據(jù)的增加、刪除、修改等操作事件時(shí),嘗試連接目標(biāo)數(shù)據(jù)源,如果連接成 功,即參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信正常,則直接將參考數(shù)據(jù)源中的數(shù) 據(jù)寫入目標(biāo)數(shù)據(jù)源;當(dāng)連接失敗,即參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信被中 斷時(shí),則記錄參考數(shù)據(jù)源中數(shù)振的變更狀態(tài)。其中數(shù)據(jù)的變更狀態(tài)與對(duì)業(yè)務(wù)對(duì) 參考數(shù)據(jù)源中的數(shù)據(jù)的操作事件的類型相同或者相關(guān)聯(lián)。如該數(shù)據(jù)的變更狀態(tài) 可以包括但不限于增加、刪除、修改。當(dāng)監(jiān)測(cè)到用戶對(duì)參考數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行了增加操作時(shí),則記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)為增加;當(dāng)監(jiān)測(cè)到用戶 對(duì)參考數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行了增加刪除時(shí),則記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀 態(tài)為刪除;當(dāng)監(jiān)測(cè)到用戶對(duì)參考數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行了修改操作時(shí),則記錄參 考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)為修改;同理,當(dāng)用戶對(duì)參考數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行 了其他操作時(shí),則記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)為對(duì)應(yīng)的狀態(tài)。
在本發(fā)明實(shí)施例中,參考數(shù)據(jù)源可以為各種應(yīng)用系統(tǒng),目標(biāo)數(shù)據(jù)源可以為 域系統(tǒng)或者數(shù)據(jù)庫(kù)。
在步驟S102中,當(dāng)參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信恢復(fù)時(shí),根據(jù)參考 數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將參考數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中。
在本發(fā)明實(shí)施例中,當(dāng)檢測(cè)到參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信已恢復(fù) 時(shí),則可以接收并響應(yīng)用戶發(fā)送的數(shù)據(jù)同步指令或者由后臺(tái)事務(wù)觸發(fā)的數(shù)據(jù)同 步指令,并根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將參考數(shù)據(jù)源中的數(shù)據(jù)導(dǎo)入目標(biāo) 數(shù)據(jù)源中,以實(shí)現(xiàn)參考數(shù)據(jù)源中的數(shù)據(jù)與目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的同步。
其中數(shù)據(jù)同步指令為單條數(shù)據(jù)同步指令或者多條數(shù)據(jù)同步指令,當(dāng)數(shù)據(jù)同 步指令為單條數(shù)據(jù)同步指令時(shí),則根據(jù)參考數(shù)據(jù)源中該單條數(shù)據(jù)同步指令指定 的數(shù)據(jù)的變更狀態(tài),將參考數(shù)據(jù)源中該單條數(shù)據(jù)同步指令指定的數(shù)據(jù)寫入目標(biāo) 數(shù)據(jù)源中,以實(shí)現(xiàn)參考數(shù)據(jù)源中該單條數(shù)據(jù)同步指令指定的數(shù)據(jù)與目標(biāo)數(shù)據(jù)源 中對(duì)應(yīng)數(shù)據(jù)的同步;當(dāng)數(shù)據(jù)同步指令為多條數(shù)據(jù)同步指令時(shí),則根據(jù)參考數(shù)據(jù) 源中該多條數(shù)據(jù)同步指令指定的多條數(shù)據(jù)的變更狀態(tài),將參考數(shù)據(jù)源中該多條 數(shù)據(jù)同步指令指定的多條數(shù)據(jù)寫入目標(biāo)數(shù)據(jù)源中,以實(shí)現(xiàn)參考數(shù)據(jù)源中該多條 數(shù)據(jù)同步指令指定的多條數(shù)據(jù)與目標(biāo)數(shù)據(jù)源中對(duì)應(yīng)數(shù)據(jù)的同步。
具體實(shí)現(xiàn)時(shí),可以為用戶提供數(shù)據(jù)同步的人機(jī)交互界面,并提供單條數(shù)據(jù) 同步方式、多條數(shù)據(jù)同步方式、后臺(tái)事務(wù)同步方式等多種數(shù)據(jù)同步的方式供用 戶選擇,當(dāng)用戶通過人機(jī)交互界面選擇單條數(shù)據(jù)同步方式、多條數(shù)據(jù)同步方式 中的一種數(shù)據(jù)同步方式,即接收到用戶發(fā)送的對(duì)應(yīng)的數(shù)據(jù)同步指令,則根據(jù)參 考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將參考數(shù)據(jù)源中該數(shù)據(jù)同步指令指定的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中。當(dāng)用戶通過人機(jī)交互界面選擇后臺(tái)事務(wù)同步方式時(shí),則監(jiān)測(cè)該 事務(wù)是否發(fā)生,當(dāng)該事務(wù)發(fā)生時(shí),即觸發(fā)數(shù)據(jù)同步指令,根據(jù)參考數(shù)據(jù)源中數(shù) 據(jù)的變更狀態(tài)將參考數(shù)據(jù)源中該數(shù)據(jù)同步指令指定的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源 中。
異,使得難以直接將參考數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中,為了解決上述
問題,在本發(fā)明實(shí)施例中,在步驟S102之前,該方法還包括下述步驟
將參考數(shù)據(jù)源中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換成目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)。在 本發(fā)明實(shí)施例中,可以釆用現(xiàn)有的任意一種數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換方法將參考數(shù)據(jù)源中 數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換成目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu),在此不再贅述。
為了提示用戶參考數(shù)據(jù)源中的數(shù)據(jù)與目標(biāo)數(shù)據(jù)源數(shù)據(jù)的同步情況,在本發(fā) 明另一實(shí)施例中,在步驟S101之后,該方法還包括下述步驟
接收用戶輸入的變更狀態(tài)查看請(qǐng)求,才艮據(jù)該變更狀態(tài)查看請(qǐng)求,輸出記錄 的參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài),以使用戶可以實(shí)時(shí)的了解參考數(shù)據(jù)源中數(shù)據(jù) 的變更狀態(tài)。在本發(fā)明另一實(shí)施例中,還可以接收用戶輸入的變更狀態(tài)導(dǎo)出請(qǐng) 求,將記錄的參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)以 一種或者多種數(shù)據(jù)存儲(chǔ)格式導(dǎo)出 并存儲(chǔ),以便用戶對(duì)參考數(shù)據(jù)源和目標(biāo)數(shù)據(jù)源數(shù)據(jù)的同步情況進(jìn)行分析和存檔。 (日/
的系統(tǒng)中,如單點(diǎn)登錄系統(tǒng)等。在單點(diǎn)登錄系統(tǒng)中,為了保證應(yīng)用系統(tǒng)和域系 統(tǒng)中數(shù)據(jù)的正確性和穩(wěn)定性,需要在應(yīng)用系統(tǒng)上線使用前,采用上述數(shù)據(jù)同步 方法將域系統(tǒng)中的數(shù)據(jù)同步到應(yīng)用系統(tǒng)中(也稱為初始化到應(yīng)用系統(tǒng)中),在 應(yīng)用系統(tǒng)上線使用后,采用上述數(shù)據(jù)同步方法將應(yīng)用系統(tǒng)中的數(shù)據(jù)同步到域系 統(tǒng)中。當(dāng)然,上述數(shù)據(jù)同步方法還可以用于對(duì)數(shù)據(jù)全集的集中控制和管理、統(tǒng) 一數(shù)據(jù)的使用(統(tǒng)一用戶資料和客戶資料)等領(lǐng)域中。其應(yīng)用領(lǐng)域不以上述例 舉為限。
在將應(yīng)用系統(tǒng)中的數(shù)據(jù)同步到域系統(tǒng)的過程中,可能出現(xiàn)應(yīng)用系統(tǒng)和域系統(tǒng)之間的通信被中斷的情況,如應(yīng)用系統(tǒng)與域系統(tǒng)之間的網(wǎng)絡(luò)連接被斷開或者 域系統(tǒng)宕機(jī)等,造成需要同步到域系統(tǒng)中的數(shù)據(jù)丟失或者需要寫入的數(shù)據(jù)的狀 態(tài)不同,使得應(yīng)用系統(tǒng)中的數(shù)據(jù)與域系統(tǒng)中的數(shù)據(jù)出現(xiàn)差異,給后續(xù)的應(yīng)用系 統(tǒng)操作和域系統(tǒng)操作帶來(lái)無(wú)法預(yù)知的問題,如域用戶帳號(hào)與應(yīng)用系統(tǒng)帳號(hào)不能 匹配等,影響單點(diǎn)登錄系統(tǒng)的性能。請(qǐng)參閱圖2,為本發(fā)明實(shí)施例提供的在單 點(diǎn)登錄系統(tǒng)中采用上述數(shù)據(jù)同步方法將應(yīng)用系統(tǒng)中的數(shù)據(jù)同步到域系統(tǒng)中的實(shí)
現(xiàn)流程,詳述如下
在步驟S201中,在應(yīng)用系統(tǒng)與域系統(tǒng)之間的通信被中斷時(shí),實(shí)時(shí)記錄應(yīng)用 系統(tǒng)中數(shù)據(jù)的變更狀態(tài)。
在本發(fā)明實(shí)施例中,需要進(jìn)行同步的數(shù)據(jù)包括但不限于以下類別組織結(jié) 構(gòu)、用戶、職位和角色。在使用過程中可以通過配置定義需要進(jìn)行同步的數(shù)據(jù)。
在步驟S202中,當(dāng)應(yīng)用系統(tǒng)與域系統(tǒng)之間的通信恢復(fù)時(shí),才艮據(jù)應(yīng)用系統(tǒng)中 數(shù)據(jù)的變更狀態(tài)將應(yīng)用系統(tǒng)中的數(shù)據(jù)同步到域系統(tǒng)中。
具體實(shí)現(xiàn)時(shí),可以為用戶提供數(shù)據(jù)同步的人機(jī)交互界面,并提供單條數(shù)據(jù) 同步方式、多條數(shù)據(jù)同步方式、后臺(tái)事務(wù)同步方式等多種數(shù)據(jù)同步的方式供用 戶選擇,當(dāng)用戶通過人機(jī)交互界面選擇其中一種數(shù)據(jù)同步方式,即接收到對(duì)應(yīng) 的數(shù)據(jù)同步指令時(shí),如果應(yīng)用系統(tǒng)與域系統(tǒng)之間的通信已恢復(fù),則根據(jù)應(yīng)用系 統(tǒng)中數(shù)據(jù)的變更狀態(tài)將應(yīng)用系統(tǒng)中指定的數(shù)據(jù)同步到目標(biāo)凄t據(jù)源中。
由于應(yīng)用系統(tǒng)中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)和域系統(tǒng)中數(shù)據(jù)的結(jié)構(gòu)可能存在差異,使 得難以直接將應(yīng)用系統(tǒng)中的數(shù)據(jù)同步到域系統(tǒng)中,為了解決上述問題,在本發(fā) 明實(shí)施例中,在步驟S202之前,該方法還包括下述步驟
將應(yīng)用系統(tǒng)中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換成域系統(tǒng)中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)。
為了提示用戶應(yīng)用系統(tǒng)中的數(shù)據(jù)與域系統(tǒng)中數(shù)據(jù)的同步情況,在本發(fā)明另 一實(shí)施例中,在步驟S201之后,該方法還包括下述步驟
接收用戶輸入的變更狀態(tài)查看請(qǐng)求,才艮據(jù)該變更狀態(tài)查看請(qǐng)求,輸出記錄 的應(yīng)用系統(tǒng)中數(shù)據(jù)的變更狀態(tài),以使用戶可以實(shí)時(shí)的了解應(yīng)用系統(tǒng)中數(shù)據(jù)的變更狀態(tài)。在本發(fā)明另一實(shí)施例中,還可以接收用戶輸入的變更狀態(tài)導(dǎo)出請(qǐng)求,將記錄的應(yīng)用系統(tǒng)中數(shù)據(jù)的變更狀態(tài)以多種數(shù)據(jù)存儲(chǔ)格式導(dǎo)出并存儲(chǔ),以便用戶對(duì)應(yīng)用系統(tǒng)和域系統(tǒng)數(shù)據(jù)的同步情況進(jìn)行分析和存檔。
圖3示出了本發(fā)明實(shí)施例提供的數(shù)據(jù)同步處理裝置的結(jié)構(gòu),為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。該數(shù)據(jù)同步處理裝置可以是內(nèi)置于任意需要進(jìn)行數(shù)據(jù)同步的系統(tǒng)(如單點(diǎn)登錄系統(tǒng))中的軟件單元、硬件單元或者軟硬件相結(jié)合的單元,或者作為獨(dú)立的掛件集成到任意需要進(jìn)行數(shù)據(jù)同步的系統(tǒng)中。其中
數(shù)據(jù)源控制器31監(jiān)測(cè)參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信狀態(tài)。其中參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信狀態(tài)包括通信中斷和通信正常。其具體的檢測(cè)方法可以采用現(xiàn)有的任意一種通信檢測(cè)方法,在此不再贅述。
變更狀態(tài)記錄單元32在數(shù)據(jù)源控制器31監(jiān)測(cè)到參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信狀態(tài)為通信中斷時(shí),實(shí)時(shí)記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)。其包括業(yè)務(wù)監(jiān)聽器321、狀態(tài)記錄單元322。其中
業(yè)務(wù)監(jiān)聽器321實(shí)時(shí)監(jiān)聽業(yè)務(wù)對(duì)參考數(shù)據(jù)源中的數(shù)據(jù)的操作事件。其中業(yè)務(wù)對(duì)數(shù)據(jù)的操作事件包括但不限于增加、刪除、修改。
狀態(tài)記錄單元322在業(yè)務(wù)監(jiān)聽器321監(jiān)聽到業(yè)務(wù)對(duì)參考數(shù)據(jù)源中的數(shù)據(jù)的操作事件時(shí),根據(jù)業(yè)務(wù)監(jiān)聽器321監(jiān)聽到操作事件,實(shí)時(shí)記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)。其中數(shù)據(jù)的變更狀態(tài)與業(yè)務(wù)監(jiān)聽器321監(jiān)聽到操作事件類型相同或者相關(guān)聯(lián)。
數(shù)據(jù)同步處理單元33在數(shù)據(jù)源控制器31監(jiān)測(cè)到參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信狀態(tài)為通信正常時(shí),根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將參考數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中。其包括同步指令接收單元331 、映射控制器332和數(shù)據(jù)導(dǎo)入單元333。其中
同步指令接收單元331接收用戶發(fā)送的數(shù)據(jù)同步指令或者由后臺(tái)事務(wù)觸發(fā)的數(shù)據(jù)同步指令。其中數(shù)據(jù)同步指令為單條數(shù)據(jù)同步指令或者多條數(shù)據(jù)同步指令。在本發(fā)明實(shí)施例中,可以通過為用戶提供數(shù)據(jù)同步的人機(jī)交互界面,并提供單條數(shù)據(jù)同步方式、多條數(shù)據(jù)同步方式、后臺(tái)事務(wù)同步方式等多種數(shù)據(jù)同步的方式供用戶選擇,以使用戶可以發(fā)送數(shù)據(jù)同步指令或者通過后臺(tái)事務(wù)觸發(fā)數(shù)據(jù)同步指令。
映射控制器332管理和查找參考數(shù)據(jù)源中的數(shù)據(jù)與目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的對(duì)應(yīng)關(guān)系。在本發(fā)明實(shí)施例中,在數(shù)據(jù)源控制器31監(jiān)測(cè)到參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信狀態(tài)為通信中斷,且在同步指令接收單元331接收到數(shù)據(jù)同步指令時(shí),映射控制器332查找目標(biāo)數(shù)據(jù)源中與參考數(shù)據(jù)源中該數(shù)據(jù)同步指令指定的數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)。
數(shù)據(jù)導(dǎo)入單元333根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將數(shù)據(jù)同步指令指定的數(shù)據(jù)導(dǎo)入至目標(biāo)數(shù)據(jù)源中。在本發(fā)明實(shí)施例中,當(dāng)數(shù)據(jù)的變更狀態(tài)為修改或刪除時(shí),則根據(jù)數(shù)據(jù)同步指令指定的數(shù)據(jù)的變更狀態(tài)更新或者刪除目標(biāo)數(shù)據(jù)源中與該數(shù)據(jù)同步指令指定的數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù);當(dāng)數(shù)據(jù)的變更狀態(tài)為增加時(shí),則將數(shù)據(jù)同步指令指定的數(shù)據(jù)增加至目標(biāo)數(shù)據(jù)源中。
由于參考數(shù)據(jù)源中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)和目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的結(jié)構(gòu)可能存在差異,使得難以直接將參考數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中,為了解決上述問題,在本發(fā)明實(shí)施例中,該裝置還包括數(shù)據(jù)轉(zhuǎn)換器34。該數(shù)據(jù)轉(zhuǎn)換器34將參考數(shù)據(jù)源中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換成目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)。
為了提示用戶參考數(shù)據(jù)源中的數(shù)據(jù)與目標(biāo)數(shù)據(jù)源數(shù)據(jù)的同步情況,在本發(fā)明另一實(shí)施例中,該裝置還包括變更狀態(tài)輸出單元35。該變更狀態(tài)輸出單元35接收用戶輸入的變更狀態(tài)查看請(qǐng)求,才艮據(jù)該變更狀態(tài)查看請(qǐng)求,輸出記錄的參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài),以使用戶可以實(shí)時(shí)的了解參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)。在本發(fā)明另一實(shí)施例中,該變更狀態(tài)輸出單元35還可以接收用戶輸入的變更狀態(tài)導(dǎo)出請(qǐng)求,將記錄的參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)以多種數(shù)據(jù)存儲(chǔ)格式導(dǎo)出并存儲(chǔ),以便用戶對(duì)參考數(shù)據(jù)源和目標(biāo)數(shù)據(jù)源數(shù)據(jù)的同步情況進(jìn)行分析和存檔。在本發(fā)明實(shí)施例中,在將參考數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源時(shí),通過實(shí)時(shí)記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài),在參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源恢復(fù)通信后,根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中,以保證參考數(shù)據(jù)源中的數(shù)據(jù)與目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的一致性和同步,提高參考數(shù)據(jù)源和目標(biāo)數(shù)據(jù)源的準(zhǔn)確性和穩(wěn)定性。通過后臺(tái)事務(wù)觸發(fā)數(shù)據(jù)同步指令,從而更人性化、更及時(shí)的對(duì)數(shù)據(jù)進(jìn)行同步。在接收到變更狀態(tài)查看指令時(shí),輸出記錄的參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài),為數(shù)據(jù)同步和后續(xù)的查詢提供憑證。通過將該數(shù)據(jù)同步方法應(yīng)用到單點(diǎn)登錄系統(tǒng)中,從而避免了應(yīng)用系統(tǒng)與域系統(tǒng)的數(shù)據(jù)差異,提高了數(shù)據(jù)的正確性和穩(wěn)定性。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種數(shù)據(jù)同步處理方法,其特征在于,所述方法包括下述步驟A、在參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信被中斷時(shí),實(shí)時(shí)記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài);B、當(dāng)參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信恢復(fù)時(shí),根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將參考數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中。
2、 如權(quán)利要求l所述的方法,其特征在于,所述步驟B具體包括 當(dāng)檢測(cè)到參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信已恢復(fù)時(shí),接收并響應(yīng)用戶發(fā)送的數(shù)據(jù)同步指令或者由后臺(tái)事務(wù)觸發(fā)的數(shù)據(jù)同步指令;根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將參考數(shù)據(jù)源中所述數(shù)據(jù)同步指令指定 的數(shù)據(jù)導(dǎo)入目標(biāo)數(shù)據(jù)源中。
3、 如權(quán)利要求2所述的方法,其特征在于,所述數(shù)據(jù)同步指令為單條數(shù)據(jù) 同步指令或者多條數(shù)據(jù)同步指令。
4、 如權(quán)利要求1所述的方法,其特征在于,在所述步驟B之前,所述方 法還包括下述步驟將參考數(shù)據(jù)源中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換成目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)。
5、 如權(quán)利要求1至4任一權(quán)利要求所述的方法,其特征在于,在所述步驟 A之后,所述方法還包括下述步驟接收用戶輸入的變更狀態(tài)查看請(qǐng)求,根據(jù)所述變更狀態(tài)查看請(qǐng)求,輸出記 錄的參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài);和/或接收用戶輸入的變更狀態(tài)導(dǎo)出請(qǐng)求,將記錄的參考數(shù)據(jù)源中數(shù)據(jù)的變更狀 態(tài)以 一種或者多種數(shù)據(jù)存儲(chǔ)格式導(dǎo)出并存儲(chǔ)。
6、 如權(quán)利要求1至4任一權(quán)利要求所述的方法,其特征在于,所述方法應(yīng) 用于單點(diǎn)登錄系統(tǒng),所述參考數(shù)據(jù)源為各種業(yè)務(wù)系統(tǒng),所述目標(biāo)數(shù)據(jù)源為域系 統(tǒng)。
7、 一種數(shù)據(jù)同步處理裝置,其特征在于,所述裝置包括數(shù)據(jù)源控制器,用于監(jiān)測(cè)參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信狀態(tài),所述 通信狀態(tài)包括通信中斷和通信正常。變更狀態(tài)記錄單元,用于在所述數(shù)據(jù)源控制器監(jiān)測(cè)到參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信狀態(tài)為通信中斷時(shí),實(shí)時(shí)記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài);數(shù)據(jù)同步處理單元,用于在所述數(shù)據(jù)源控制器監(jiān)測(cè)到參考數(shù)據(jù)源與目標(biāo)數(shù) 據(jù)源之間的通信狀態(tài)為通信正常時(shí),根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將參考 數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中。
8、 如權(quán)利要求7所述的裝置,其特征在于,所述變更狀態(tài)記錄單元包括 業(yè)務(wù)監(jiān)聽器,用于實(shí)時(shí)監(jiān)聽業(yè)務(wù)對(duì)參考數(shù)據(jù)源中的數(shù)據(jù)的操作事件; 狀態(tài)記錄單元,用于在所述業(yè)務(wù)監(jiān)聽器監(jiān)聽到業(yè)務(wù)對(duì)參考數(shù)據(jù)源中的數(shù)據(jù)的操作事件時(shí),根據(jù)所述業(yè)務(wù)監(jiān)聽器監(jiān)聽到操作事件,實(shí)時(shí)記錄參考數(shù)據(jù)源中 數(shù)據(jù)的變更狀態(tài)。
9、 如權(quán)利要求7所述的裝置,其特征在于,所述數(shù)據(jù)同步處理單元包括 同步指令接收單元,用于接收用戶發(fā)送的數(shù)據(jù)同步指令或者由后臺(tái)事務(wù)觸發(fā)的數(shù)據(jù)同步指令;映射控制器,用于管理和查找參考數(shù)據(jù)源中的數(shù)據(jù)與目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的 對(duì)應(yīng)關(guān)系,在所述數(shù)據(jù)源控制器監(jiān)測(cè)到參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信狀 態(tài)為通信中斷,且在同步指令接收單元接收到數(shù)據(jù)同步指令時(shí),查找目標(biāo)數(shù)據(jù) 源中與參考數(shù)據(jù)源中該數(shù)據(jù)同步指令指定的數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù);數(shù)據(jù)導(dǎo)入單元,用于根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將數(shù)據(jù)同步指令指 定的數(shù)據(jù)導(dǎo)入至目標(biāo)數(shù)據(jù)源中。
10、 如權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括 數(shù)據(jù)轉(zhuǎn)換器,用于將參考數(shù)據(jù)源中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換成目標(biāo)數(shù)據(jù)源中數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu);和/或變更狀態(tài)輸出單元,用于接收用戶輸入的變更狀態(tài)查看請(qǐng)求和/或變更狀態(tài) 導(dǎo)出請(qǐng)求,才艮據(jù)所述變更狀態(tài)查看請(qǐng)求輸出記錄的參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài),根據(jù)所述變更狀態(tài)導(dǎo)出請(qǐng)求將記錄的參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)以 一種 或者多種數(shù)據(jù)存儲(chǔ)格式導(dǎo)出并存儲(chǔ)。
11、 一種單點(diǎn)登錄系統(tǒng),其特征在于,所述單點(diǎn)登錄系統(tǒng)包括權(quán)利要求7 至IO任一權(quán)利要求所述的數(shù)據(jù)同步處理裝置。
全文摘要
本發(fā)明適用于數(shù)據(jù)處理領(lǐng)域,提供了一種數(shù)據(jù)同步處理方法、裝置和單點(diǎn)登錄系統(tǒng),所述方法包括下述步驟A.在參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信被中斷時(shí),實(shí)時(shí)記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài);B.當(dāng)參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信恢復(fù)時(shí),根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將參考數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中。本發(fā)明實(shí)施例在參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信被中斷時(shí),記錄參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài),在參考數(shù)據(jù)源與目標(biāo)數(shù)據(jù)源之間的通信正常后,根據(jù)參考數(shù)據(jù)源中數(shù)據(jù)的變更狀態(tài)將參考數(shù)據(jù)源中的數(shù)據(jù)同步到目標(biāo)數(shù)據(jù)源中,從而避免了參考數(shù)據(jù)源中的數(shù)據(jù)與目標(biāo)數(shù)據(jù)源中的數(shù)據(jù)差異,提高了參考數(shù)據(jù)源和目標(biāo)數(shù)據(jù)源的準(zhǔn)確性和穩(wěn)定性。
文檔編號(hào)G06F17/30GK101639865SQ20091018979
公開日2010年2月3日 申請(qǐng)日期2009年8月28日 優(yōu)先權(quán)日2009年8月28日
發(fā)明者峰 任 申請(qǐng)人:金蝶軟件(中國(guó))有限公司