[發明專利]一種同步數據的方法和裝置在審
| 申請號: | 201810955540.3 | 申請日: | 2018-08-21 |
| 公開(公告)號: | CN110858197A | 公開(公告)日: | 2020-03-03 |
| 發明(設計)人: | 王曉聰 | 申請(專利權)人: | 北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/23;G06F16/27 |
| 代理公司: | 中原信達知識產權代理有限責任公司 11219 | 代理人: | 張一軍;李陽 |
| 地址: | 100195 北京市海淀區杏石口路6*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 同步 數據 方法 裝置 | ||
本發明公開了一種同步數據的方法和裝置,涉及計算機技術領域。該方法的一具體實施方式包括:通過消息中間件服務訂閱源數據的數據變更消息,接收源數據的數據變更消息,并將所述數據變更消息存儲到臨時表中;將源數據的靜態離線數據同步到本地數據表中;從所述臨時表中獲取并處理所述數據變更消息,將所述數據變更消息對應的數據更新到所述本地數據表中。該實施方式能夠解決浪費比對資源的問題。
技術領域
本發明涉及計算機技術領域,尤其涉及一種同步數據的方法和裝置。
背景技術
電子商務發展到一定階段,一般會將電子商務的基礎數據做成服務接口提供給其他業務部門,根據id就可以查詢基礎信息的具體信息。由于現在很多其他業務部門都有根據實時數據進行數據分析的需求,比如實時庫存分析、實時定價分析等,都需要關聯基礎數據,從而進行數據篩選和分頁查詢。如果利用基礎數據的接口服務查詢就必須要把所有數據都查詢到才能進行分頁、關聯、篩選查詢等,這樣一方面會對基礎數據平臺服務造成壓力,另一方面對實時要求的性能有很大的影響。因此,其他業務部門需要自己同步一份和基礎數據平臺一致的基礎數據。
現有技術中主要有通過接口同步基礎數據平臺的全量數據,保存全量數據到本地數據庫中,同步完成后通過接口全量比對數據并修改數據或者新增數據,然后每隔一段時間或者每天定時幾次全量比對數據,并根據最新數據修改數據或者保存新增數據。
在實現本發明過程中,發明人發現現有技術中至少存在如下問題:
1)首次全量同步時,因為是用內存級別的接口循環地去獲取數據,因此宕機或者某次單次循環有問題時可能需要重新啟動整個流程;
2)在首次全量同步過程中,因為同步數據的源數據會變更,因此需要同步完以后不停地比對數據,以達到數據的一致性;
3)由于不能實時監聽到對方數據源的變化,因此需要定時地比對數據,但是可能只有少量數據發生變化,如果全部比對就會浪費比對資源;
4)由于在比對數據的過程中又會產生新的數據,這樣就需要不停地比對,一直循環下去導致浪費了大量服務器資源。
發明內容
有鑒于此,本發明實施例提供一種同步數據的方法和裝置,能夠解決浪費比對資源的問題。
為實現上述目的,根據本發明實施例的一個方面,提供了一種同步數據的方法,包括:
通過消息中間件服務訂閱源數據的數據變更消息,接收源數據的數據變更消息,并將所述數據變更消息存儲到臨時表中;
將源數據的靜態離線數據同步到本地數據表中;
從所述臨時表中獲取并處理所述數據變更消息,將所述數據變更消息對應的數據更新到所述本地數據表中。
可選地,所述方法還包括:
通過消息中間件服務訂閱源數據的數據變更消息,接收源數據的數據變更消息,并將所述數據變更消息對應的數據存儲到本地數據表中;
停止執行通過消息中間件服務訂閱源數據的數據變更消息,接收源數據的數據變更消息,并將所述數據變更消息存儲到臨時表中的步驟。
可選地,將靜態離線數據同步到本地數據表中,包括:
獲取早于等于同步截止時間戳的源數據的快照數據,通過大數據同步數據技術將所述快照數據同步到本地數據表中。
可選地,將所述數據變更消息存儲到臨時表中,包括:
針對同一條數據,判斷數據變更消息的時間戳大小,將時間戳最大的數據變更消息存儲到臨時表中,并覆蓋所述臨時表中時間戳早于該條數據變更消息的數據變更消息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司,未經北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810955540.3/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





