關(guān)于排序文件大小與程序內(nèi)存大小的問題
有一點沒有想明白,從程序的結(jié)構(gòu)來看是將800M的數(shù)據(jù)都讀到內(nèi)存里才進(jìn)行的排序,如果數(shù)據(jù)再大呢?會不會因為數(shù)據(jù)量大的原因?qū)е鲁绦虮罎⒛兀€是我有什么理解不對的地方,請老師解惑。
有一點沒有想明白,從程序的結(jié)構(gòu)來看是將800M的數(shù)據(jù)都讀到內(nèi)存里才進(jìn)行的排序,如果數(shù)據(jù)再大呢?會不會因為數(shù)據(jù)量大的原因?qū)е鲁绦虮罎⒛兀€是我有什么理解不對的地方,請老師解惑。
2019-11-07
舉報
2020-01-20
如果你單機(jī)跑整個程序(你的機(jī)器內(nèi)存8G,但你需要派排序的文件8.5G)這樣子會導(dǎo)致程序因為內(nèi)存空間不足導(dǎo)致panic,因此通過分片(分塊)的方法,將大文件分子別在不同的機(jī)器上面進(jìn)行處理,最終再由一個機(jī)器分別匯總結(jié)果并輸出到文件。