[發(fā)明專利]基于FTP協(xié)議的行業(yè)數(shù)據(jù)庫數(shù)據(jù)實時同步系統(tǒng)在審
| 申請?zhí)枺?/td> | 201210460308.5 | 申請日: | 2012-11-16 |
| 公開(公告)號: | CN103823797A | 公開(公告)日: | 2014-05-28 |
| 發(fā)明(設(shè)計)人: | 王衛(wèi)民;符建輝;王石 | 申請(專利權(quán))人: | 鎮(zhèn)江諾尼基智能技術(shù)有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;H04L29/08 |
| 代理公司: | 南京知識律師事務(wù)所 32207 | 代理人: | 汪旭東 |
| 地址: | 212009 江蘇省鎮(zhèn)江市*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 ftp 協(xié)議 行業(yè) 數(shù)據(jù)庫 數(shù)據(jù) 實時 同步 系統(tǒng) | ||
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)庫數(shù)據(jù)同步領(lǐng)域,特別是涉及相同模式的兩個數(shù)據(jù)庫之間實時的數(shù)據(jù)同步,對于解決各個系統(tǒng)之間的數(shù)據(jù)共享,提出了一種通用的解決方法。?
背景技術(shù)
在企業(yè)新舊系統(tǒng)的開發(fā)實施過程中,存在這樣的情況:1、企業(yè)中存在很多現(xiàn)有的系統(tǒng)和數(shù)據(jù)庫,我們稱之為遺產(chǎn)(Legacy);2、新開發(fā)或新實施的系統(tǒng)往往需要使用現(xiàn)有的數(shù)據(jù)庫或數(shù)據(jù)庫中的一部分;3、很多現(xiàn)有的系統(tǒng)或數(shù)據(jù)庫,作為線上系統(tǒng),從安全性角度考慮,并不支持新系統(tǒng)的直接訪問;4、為了保證企業(yè)數(shù)據(jù)的一致性,同時也為了管理上的便利性,企業(yè)管理人員只維護一份數(shù)據(jù)。在這種情況下,需要研究行業(yè)數(shù)據(jù)庫數(shù)據(jù)實時同步系統(tǒng)及其方法。?
在一般應(yīng)用系統(tǒng)中,通常采用硬編碼的方式,將需要同步的數(shù)據(jù)直接在代碼中實現(xiàn),同時通過編碼調(diào)用外部系統(tǒng)的接口,將數(shù)據(jù)操作事件通知給外部系統(tǒng)。例如,對數(shù)據(jù)庫A進行了插入數(shù)據(jù)操作,需要將這些數(shù)據(jù)同時插入到數(shù)據(jù)庫B,那么硬編碼會在代碼中將對數(shù)據(jù)庫B的操作寫在代碼中。同時,通過調(diào)用外部系統(tǒng)的接口,將對數(shù)據(jù)庫的操作通知給外部系統(tǒng)。?
這種系統(tǒng)存在兩個問題:1、在應(yīng)用場景改變時就需要修改源代碼來滿足需求,隨著數(shù)據(jù)和應(yīng)用場景的增加,需要不斷地修改源代碼,因而會導致代碼維護的難度越來越大。例如,當業(yè)務(wù)發(fā)生更改,對數(shù)據(jù)庫A進行插入數(shù)據(jù)操作后,不需要將數(shù)據(jù)插入到B,也不需要將其通知外部系統(tǒng),由于是硬編碼,所以需要進行修改代碼后?重新編譯和部署,才能滿足業(yè)務(wù)需求。?2、需要遺產(chǎn)系統(tǒng)開發(fā)商修改代碼,植入同步將其數(shù)據(jù)更新到新系統(tǒng)數(shù)據(jù)庫的功能,這么做,即存在安全隱患,也有商務(wù)問題;3、同時,遺產(chǎn)系統(tǒng)必須具有訪問操作新系統(tǒng)數(shù)據(jù)庫權(quán)限,增加了安全隱患。?
為了減少修改源代碼帶來的不便,還可以通過配置文件來進行數(shù)據(jù)的同步,調(diào)用外部系統(tǒng)的接口,將事件通知給外部系統(tǒng)。例如,對數(shù)據(jù)庫A進行了插入數(shù)據(jù)操作,需要將這些數(shù)據(jù)同時插入到數(shù)據(jù)庫B中。此時,讀取配置文件獲取數(shù)據(jù)庫B的連接信息,將數(shù)據(jù)更新到數(shù)據(jù)庫B中。同時,通過調(diào)用外部系?統(tǒng)的接口,將對數(shù)據(jù)庫的操作通知給外部系統(tǒng)。?
雖然通過配置文件的方式可以進行數(shù)據(jù)同步,但是配置文件中的信息為數(shù)?據(jù)庫連接信息,對數(shù)據(jù)的同步操作語句仍然需要硬編碼來實現(xiàn);而且由于在代碼中調(diào)用了外部系統(tǒng)的接口,當外部系統(tǒng)的接口發(fā)生改變時,會導致系統(tǒng)出現(xiàn)問題,例如原來在代碼中調(diào)用的外部接口為接收,如外部系統(tǒng)接口發(fā)生變化后,變成了發(fā)送。但是原代碼沒有修改,會導致系統(tǒng)不能正常運行。而且,當有新的應(yīng)用系統(tǒng)想得到數(shù)據(jù)庫操作通知時,也需要修改代碼,影響了系統(tǒng)的擴展性。?
發(fā)明內(nèi)容
針對以上問題,本發(fā)明提供了一種基于FTP協(xié)議的行業(yè)數(shù)據(jù)庫數(shù)據(jù)實時同步系統(tǒng),本發(fā)明可以讓遺產(chǎn)系統(tǒng)和數(shù)據(jù)庫中的數(shù)據(jù)可以增量更新到新系統(tǒng)中,使得管理人員僅需要維護一份數(shù)據(jù),同時又不需要額外的接口開發(fā)工作量,避免了代碼的大量修改,又可以增強系統(tǒng)的擴展性。?
技術(shù)方案:為了解決以上問題本發(fā)明提供了一種基于FTP協(xié)議的行業(yè)數(shù)據(jù)庫數(shù)據(jù)實時同步系統(tǒng),其特征在于:包括增量數(shù)據(jù)導出工具模塊、增量數(shù)據(jù)導入工具模塊、FTP服務(wù)器、增量數(shù)據(jù)瀏覽工具模塊;?
增量數(shù)據(jù)導出工具模塊,用于讀取數(shù)據(jù)庫增量信息,形成增量數(shù)據(jù)包,并存入配置好的FTP服務(wù)器,數(shù)據(jù)庫增量數(shù)據(jù)抽取“簡稱ETL”方式采用了觸發(fā)器方式;
增量數(shù)據(jù)導入工具模塊,用于從FTP服務(wù)器上獲取增量更新包文件并執(zhí)行,將遺產(chǎn)系統(tǒng)所管理使用的數(shù)據(jù)同步增量更新到新系統(tǒng);
增量數(shù)據(jù)瀏覽工具模塊,對增量SQL語句進行分析,顯示需要執(zhí)行的新系統(tǒng)中的增量數(shù)據(jù)。
所述的觸發(fā)器方式是根據(jù)抽取要求,在要被抽取的源表上建立插入、修改、刪除3個觸發(fā)器,每當源表中的數(shù)據(jù)發(fā)生變化,就被相應(yīng)的觸發(fā)器將變化的數(shù)據(jù)寫入一個增量日志表,ETL的增量抽取則是從增量日志表中而不是直接在源表中抽取數(shù)據(jù),同時增量日志表中抽取過的數(shù)據(jù)要及時被標記或刪除;增量日志表不存儲增量數(shù)據(jù)的所有字段信息,而只是存儲源表名稱、更新的關(guān)鍵字值和更新操作類型“knsen、update或delete“,ETL增量抽取進程首先根據(jù)源表名稱和更新的關(guān)鍵字值,從源表中提取對應(yīng)的完整記錄,再根據(jù)更新操作類型,對目標表進行相應(yīng)的處理。?
所述的增量數(shù)據(jù)導入工具模塊:①配置數(shù)據(jù)關(guān)聯(lián)規(guī)則;②從FTP服務(wù)器上獲取增量更新包;③執(zhí)行增量更新包;④多線程執(zhí)行保存在數(shù)據(jù)庫中的SQL語句;⑤從FTP服務(wù)器上刪除增量更新文件;完成遺產(chǎn)系統(tǒng)和新系統(tǒng)之間的增量數(shù)據(jù)同步,實現(xiàn)遺產(chǎn)系統(tǒng)與新系統(tǒng)之間的數(shù)據(jù)共享。?
所述的增量數(shù)據(jù)導入工具模塊由定時器啟動。?
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于鎮(zhèn)江諾尼基智能技術(shù)有限公司,未經(jīng)鎮(zhèn)江諾尼基智能技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210460308.5/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 圖像診斷裝置、醫(yī)用系統(tǒng)以及協(xié)議管理方法
- 一種自動協(xié)議識別方法及系統(tǒng)
- 客戶端中遞送協(xié)議數(shù)據(jù)單元的方法及相關(guān)裝置
- 遠程通訊系統(tǒng)
- 一種基于可拼裝通信協(xié)議棧的通信方法及系統(tǒng)
- 一種實現(xiàn)國產(chǎn)平臺PXEBOOT的協(xié)議架構(gòu)
- CBTC通信系統(tǒng)協(xié)議解析方法、協(xié)議庫管理方法
- 一種協(xié)議轉(zhuǎn)換的方法、裝置、設(shè)備及存儲介質(zhì)
- 一種用于燈光控制的協(xié)議轉(zhuǎn)換系統(tǒng)及方法
- 一種通用工藝人工智能物聯(lián)網(wǎng)網(wǎng)關(guān)





