10G數據,1G內存排序問題

將數據切分成n段,保證每段數據的大小在內存中放得下,然後將n個段的數據放到n個節點上進行並行計算,對計算的結果做多路歸併,或者維護一個大小爲n的小根堆,第一次從n個數據段中取第一個數據放入堆中,然後拿出最小的元素放入最終的文件中,然後從剛纔從堆中取出值的文件中再取一個值,循環,直到將所有的數據排完。但是這樣做存在一個問題,每次從n段文件中取數據比較耗時,這些數據可能來自於網絡傳輸或者文件,通常可以
相關文章
相關標籤/搜索