現在要把一個資料庫的一個表的資料大約在200G左右的資料量的資料讀出來,并且做處理,怎么做分批處理了,如果我在處理資料的時候,程式崩了,在重啟的時候保證不讀重復的資料,這個要怎么弄。求教大神。
uj5u.com熱心網友回復:
這是一個表的資料?為什么沒有做磁區呢。。。uj5u.com熱心網友回復:
可以表上加一個標記,處理過的寫 1 ,沒處理過的寫 0 ;PS:200G 的資料,建議用存盤程序處理,用前臺程式,還是有點不爽的;
uj5u.com熱心網友回復:
@ghx287524027 已經是分表的資料了,月表比較大uj5u.com熱心網友回復:
@賣水果的net 現在不是只有這張表的,這個只是其中的一張月表的,關鍵這種表是程式生成的一張結果表,不好改的。我現在的想法是能不能每次讀一點檔案,然后寫到檔案里面去,回圈讀寫,這樣每次jvm可以回收以前讀取的快取。不過就怕效率跟不上。uj5u.com熱心網友回復:
如果這樣的話你就只能以時間換空間了,利用分頁的原理每次從表中讀取部分資料,回圈讀取uj5u.com熱心網友回復:
建議用程序處理,每次取一批資料,處理完記錄這批資料最大編號,下批資料從最大編號開始取。程式掛了也可以接上編號繼續跑
uj5u.com熱心網友回復:
樓主解決了么?轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/97808.html
標籤:開發
