[發(fā)明專利]一種對線上業(yè)務(wù)無影響的數(shù)據(jù)同步方法及裝置在審
| 申請?zhí)枺?/td> | 201910455772.7 | 申請日: | 2019-05-29 |
| 公開(公告)號: | CN110196883A | 公開(公告)日: | 2019-09-03 |
| 發(fā)明(設(shè)計(jì))人: | 李鵬凱 | 申請(專利權(quán))人: | 貝殼技術(shù)有限公司 |
| 主分類號: | G06F16/27 | 分類號: | G06F16/27;G06F16/23 |
| 代理公司: | 北京路浩知識產(chǎn)權(quán)代理有限公司 11002 | 代理人: | 王慶龍;苗曉靜 |
| 地址: | 300457 天津市濱海新區(qū)經(jīng)濟(jì)技術(shù)開發(fā)*** | 國省代碼: | 天津;12 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 數(shù)據(jù)同步 磁盤碎片 業(yè)務(wù)運(yùn)行 對線 數(shù)據(jù)表刪除 查詢數(shù)據(jù) 查詢性能 磁盤空間 同步數(shù)據(jù) 表結(jié)構(gòu) 刪除 數(shù)據(jù)庫 存儲 保證 | ||
本發(fā)明的實(shí)施例提供了一種對線上業(yè)務(wù)無影響的數(shù)據(jù)同步方法及裝置,該方法在數(shù)據(jù)庫進(jìn)行數(shù)據(jù)同步時(shí),先根據(jù)原有數(shù)據(jù)表的表結(jié)構(gòu)和同步數(shù)據(jù)生成目標(biāo)數(shù)據(jù)表,目標(biāo)數(shù)據(jù)表中存儲了新的數(shù)據(jù)。通過對表名的修改,將目標(biāo)數(shù)據(jù)表的表名修改為原有數(shù)據(jù)表的表名,然后將整個(gè)原有數(shù)據(jù)表刪除。在生成目標(biāo)數(shù)據(jù)表的過程中可以通過原有數(shù)據(jù)表維持業(yè)務(wù)運(yùn)行,將目標(biāo)數(shù)據(jù)表的表名修改為原有數(shù)據(jù)表的表名后,可以通過目標(biāo)數(shù)據(jù)表維持業(yè)務(wù)運(yùn)行,可見,在數(shù)據(jù)同步的整個(gè)過程中均不影響業(yè)務(wù)的正常運(yùn)行,且能夠保證查詢數(shù)據(jù)的準(zhǔn)確性。此外,數(shù)據(jù)同步后,由于是對整個(gè)原有數(shù)據(jù)表進(jìn)行刪除不會產(chǎn)生磁盤碎片,避免了因磁盤碎片導(dǎo)致的磁盤空間浪費(fèi)和查詢性能下降。
技術(shù)領(lǐng)域
本發(fā)明實(shí)施例涉及全量數(shù)據(jù)同步應(yīng)用技術(shù)領(lǐng)域,尤其是涉及一種對線上業(yè)務(wù)無影響的數(shù)據(jù)同步方法及裝置。
背景技術(shù)
新的數(shù)據(jù)不斷生成,因此需要不斷更新數(shù)據(jù)庫中的數(shù)據(jù)。對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行全量更新時(shí),通常先將數(shù)據(jù)表中的某一條舊的數(shù)據(jù)刪除,再將新的數(shù)據(jù)寫入。由于數(shù)據(jù)庫中數(shù)據(jù)量較大,這種數(shù)據(jù)的更新過程較慢,耗時(shí)較長,數(shù)據(jù)更新過程中數(shù)據(jù)庫無法使用,嚴(yán)重影響對相關(guān)業(yè)務(wù)的運(yùn)行。在數(shù)據(jù)更新的過程中,新的數(shù)據(jù)和舊的數(shù)據(jù)并存,即便可以通過數(shù)據(jù)庫查詢數(shù)據(jù),也無法保證查詢結(jié)果的準(zhǔn)確性。此外,這種逐條刪除逐條寫入的更新過程會因?yàn)轭l繁的刪除操作產(chǎn)生大量磁盤碎片,造成磁盤浪費(fèi),導(dǎo)致查詢性能下降。
在實(shí)現(xiàn)本發(fā)明實(shí)施例的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有的數(shù)據(jù)庫更新過程影響數(shù)據(jù)庫的使用,更新過程耗時(shí)較長,且會因更新過程生成的磁盤碎片導(dǎo)致數(shù)據(jù)庫查詢性能下降。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是如何解決現(xiàn)有的數(shù)據(jù)庫更新過程影響數(shù)據(jù)庫的使用,更新過程耗時(shí)較長,且會因更新過程生成的磁盤碎片導(dǎo)致數(shù)據(jù)庫查詢性能下降的問題。
針對以上技術(shù)問題,本發(fā)明的實(shí)施例提供了一種對線上業(yè)務(wù)無影響的數(shù)據(jù)同步方法,包括:
接收對數(shù)據(jù)庫原有數(shù)據(jù)表中的數(shù)據(jù)進(jìn)行數(shù)據(jù)同步的請求,獲取同步數(shù)據(jù);
根據(jù)所述原有數(shù)據(jù)表的表結(jié)構(gòu)和所述同步數(shù)據(jù)生成目標(biāo)數(shù)據(jù)表,所述目標(biāo)數(shù)據(jù)表的表結(jié)構(gòu)與所述原有數(shù)據(jù)表的表結(jié)構(gòu)相同,且所述目標(biāo)數(shù)據(jù)表中存儲的數(shù)據(jù)為所述同步數(shù)據(jù);
獲取所述原有數(shù)據(jù)表的表名,將所述目標(biāo)數(shù)據(jù)表的表名重命名為所述原有數(shù)據(jù)表的表名,并刪除所述原有數(shù)據(jù)表。
可選地,所述根據(jù)所述原有數(shù)據(jù)表的表結(jié)構(gòu)和所述同步數(shù)據(jù)生成目標(biāo)數(shù)據(jù)表,包括:
生成與所述原有數(shù)據(jù)表的表結(jié)構(gòu)相同的目標(biāo)表格,將所述同步數(shù)據(jù)插入到目標(biāo)表格中;
若判斷所述同步數(shù)據(jù)成功插入到目標(biāo)表格中,則將插入了所述同步數(shù)據(jù)的目標(biāo)表格作為所述目標(biāo)數(shù)據(jù)表。
可選地,若判斷所述同步數(shù)據(jù)插入到目標(biāo)表格失敗,則循環(huán)執(zhí)行數(shù)據(jù)插入操作,直到將所述同步數(shù)據(jù)成功插入到目標(biāo)表格中,將插入了所述同步數(shù)據(jù)的目標(biāo)表格作為所述目標(biāo)數(shù)據(jù)表,或者直到循環(huán)執(zhí)行數(shù)據(jù)插入操作的次數(shù)超過預(yù)設(shè)次數(shù);
其中,所述數(shù)據(jù)插入操作包括:刪除當(dāng)前的目標(biāo)表格和已經(jīng)插入到當(dāng)前的目標(biāo)表格中的同步數(shù)據(jù),生成新的目標(biāo)表格,將所述同步數(shù)據(jù)插入到新的目標(biāo)表格中。
可選地,若檢測到循環(huán)執(zhí)行數(shù)據(jù)插入操作的次數(shù)超過預(yù)設(shè)次數(shù),則發(fā)出所述同步數(shù)據(jù)插入到目標(biāo)表格失敗,無法對所述原有數(shù)據(jù)表中的數(shù)據(jù)進(jìn)行數(shù)據(jù)同步的第一提示信息。
可選地,所述將所述目標(biāo)數(shù)據(jù)表的表名重命名為所述原有數(shù)據(jù)表的表名,并刪除所述原有數(shù)據(jù)表,包括:
將所述原有數(shù)據(jù)表的表名修改為設(shè)定的標(biāo)記表名后,將所述目標(biāo)數(shù)據(jù)表的表名修改為所述原有數(shù)據(jù)表的表名,并刪除所述原有數(shù)據(jù)表。
可選地,還包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于貝殼技術(shù)有限公司,未經(jīng)貝殼技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910455772.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)同步方法和數(shù)據(jù)同步系統(tǒng)
- 數(shù)據(jù)同步系統(tǒng)以及數(shù)據(jù)同步方法
- 數(shù)據(jù)同步方法與數(shù)據(jù)同步系統(tǒng)
- 數(shù)據(jù)同步系統(tǒng)及應(yīng)用數(shù)據(jù)同步系統(tǒng)的數(shù)據(jù)同步方法
- 數(shù)據(jù)同步裝置和數(shù)據(jù)同步方法
- 數(shù)據(jù)同步系統(tǒng)和數(shù)據(jù)同步方法
- 數(shù)據(jù)同步方法和數(shù)據(jù)同步系統(tǒng)
- 數(shù)據(jù)同步方法和數(shù)據(jù)同步系統(tǒng)
- 數(shù)據(jù)同步方法、數(shù)據(jù)同步裝置、數(shù)據(jù)同步設(shè)備及存儲介質(zhì)
- 數(shù)據(jù)同步方法和數(shù)據(jù)同步裝置





