我有一個Perl腳本,它讀取兩個文件並處理它們。並行處理多個文件
第一個文件 - 信息文件 - I將其存儲爲一個散列(3.5 GB)
第二個文件 - taregt文件 - 我通過使用從信息文件和其他子程序信息按照設計處理。 (此文件,目標,範圍從30 - 60 GB)
到目前爲止的工作是:
- 讀取信息文件到一個哈希
- 打破了目標文件到 塊
我想在平行於所有塊運行:
while(chunks){
# do something
sub a {}
sub b {}
}
所以BASICA lly,我想讀取一個塊,寫出它的輸出,並在同一時間爲多個塊執行此操作。 while循環讀取塊文件的每一行,並調用各種子例程進行處理。
有沒有辦法,我可以讀取背景數據塊的方式?
我不想讀信息的文件,每一塊,因爲它是3.5GB長,我讀它變成亂碼,這會佔用3.5GB每次。
眼下腳本需要1 - 2小時爲30-60gb運行。
有很多過濾和丟棄的,所以整個目標文件的outout是500MB的〜我 –
所期望的OS讀的背景下一塊,甚至沒有被要求! – ikegami
你說這個文件是3.5GB,並且保存它的散列是3.5GB ......我非常懷疑這一點。哈希值可能會更多。 – ikegami