我有一個Java應用程序,我需要解壓縮大約80 GB的GZIP文件。我應該使用Java API解壓縮還是應該調用解壓縮文件的bash腳本?哪一個會高效?我可能有超過1個zip文件,因此我可以爲每個解壓縮使用多個線程嗎?我的環境是基於Linux的解壓縮大文件(〜80 GB) - 使用Java或shell腳本
-2
A
回答
1
gunzip
命令比基於Java的解壓縮方法更快,因爲它是本機代碼,高度優化。
您可以使用bash在單獨的進程中解壓每個文件,它可能會更快,但不會像您期望的那樣因爲磁盤訪問瓶頸而更快。
當然,儘管仍然存在,但在SSD驅動器或在多個獨立磁盤上並行解壓幾個文件的情況下,瓶頸會盡量減少。
+0
對於這種大小的文件,實際上並行運行多個解壓縮可能會更慢,因爲它可能會增加磁盤尋道時間,假設CPU速度足夠快,只需進行一個解壓縮即可保持磁盤繁忙。 – Andreas
+1
@Andreas取決於您是否在使用SSD驅動器(沒有涉及手臂,只有傳輸速率瓶頸)或在多個驅動器中並行解壓縮(源文件位於單獨的驅動器上)。無論如何,解決方案都需要適當的基準。 –
相關問題
- 1. 使用Shell腳本的解壓縮器
- 2. Shell腳本:將小gzip文件加入大文件而不解壓縮
- 3. 用java解壓縮文本
- 4. 使用shell腳本壓縮字典
- 5. 腳本解壓縮附件
- 6. 如何在shell腳本中使用新名稱壓縮文件?
- 7. 以kotlin腳本解壓縮文件[.kts]
- 8. 創建一個Applescript或Shell腳本來解壓縮和重命名文件?
- 9. PHP解壓縮大文件
- 10. 使用Java解壓縮.taz文件
- 11. 使用java解壓縮文件
- 12. 解壓縮文件夾中使用Java
- 13. Java壓縮/解壓縮大文件(> 1GB)
- 14. 使用Powershell腳本壓縮文件夾
- 15. 使用windows bat腳本壓縮文件
- 16. PHP解壓縮非常大的文件
- 17. 解壓縮saz文件java
- 18. java解壓縮文件
- 19. 使用php腳本的壓縮/壓縮文件夾
- 20. 動態解壓縮大量文件
- 21. 解壓縮(解壓縮)由.net壓縮(解壓縮)的文件.net system.io.compression.gzipstream
- 22. 使用php腳本以小塊分割大型壓縮文件
- 23. 使用powershell腳本解壓縮文件夾。
- 24. 如何使用谷歌腳本解壓縮blob(xlsx文件)
- 25. Flex的解壓縮/解壓縮大文件
- 26. 如何在沒有vb腳本的Windows shell中壓縮文件,並且僅使用Window默認壓縮文件
- 27. 使用shell腳本解析hocon文件
- 28. 使用shell腳本解析CSV文件
- 29. 使用不同的文件名編碼壓縮或解壓縮文件?
- 30. javascript文本壓縮/解壓
使用Java API或bash腳本? *主要以意見爲基礎。* - 高效? *嘗試一下,看看自己。* ---多個線程? *是。* – Andreas