關於數據同步全量與增量在大數據情況下分析


(數據通過http接口全量返回)

 

1)全量方式:

1.1)小數據量下: 

  1.1.1):不做分頁,數據通過一次返回(沒問題)

 

1.2)大數據量下:

  1.2.1)不做分頁,數據通過一次返回(數據量過大可能會導致接口無響應、或程序內存溢出)

  1.2.2)做分頁:

      做分頁要注意的地方:1.分頁必須帶上排序,且必須按照創建時間排序(或id排序,確保新創建的數據排在最后),否則可能會導致數據在分頁讀取是丟失。

 

2)增量方式(updateTime參與篩選條件)

2.1)小數據量下:

  2.1.1)不做分頁,數據通過一次返回(沒問題)

 

2.2)大數據量下:

  2.2.1)不做分頁(數據量過大可能會導致接口無響應、或程序內存溢出)

  2.2.2)做分頁(取數據時從首頁開始往后讀取):由於數據篩選時updateTime有參與,則如果在分頁查詢過程的時候修改了數據,會導致分頁前移,會有丟失數據的可能。(由於是增量數據,此次數據丟失了,那么下一次再調用增量查詢仍然可以拿到數據)

  2.2.3)做分頁(取數據時從末頁開始往前讀取):如果過程中某些數據被修改了導致分頁前移,那么該方式會出現重復的數據,則采用去重處理即可。(注意updateTime作為條件時是一個固定區間,比如updateTime>=2020-01-01 00:00:00 and updateTime<2020-01-02 00:00:00 ,分頁數據只會減少不會增加)(並行數據抓取也會有丟失數據的可能,看自己業務是否忽略該問題)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM