2008年4月28日 星期一

[松鼠] script 整理一次圖庫需要的時間....

2008年 4月28日 周一 16時42分33秒 CST start....
Generating src/lib list.... done.
  • 產生圖庫硬碟的所有 src/lib 目錄列表。
  • 當圖庫裡的 src/lib 目錄數量越多, 執行時間就越久。
2008年 4月28日 周一 16時57分48秒 CST start....
Generating MD5 script.... done.
Generating MD5....
/ad1/nori/pxpboard/src : append repository to /md0/md5_all.
/ad1/nori/phpboard/src : append repository to /md0/md5_all.
/ad1/phantom002/bbs2/src : append repository to /md0/md5_all.
/ad2/2cat/wp2/src : append repository to /md0/md5_all.
/ad2/2cat/wp2/lib/119 : append repository to /md0/md5_all.
/ad2/2cat/wp/lib/114 : append repository to /md0/md5_all.
/ad2/2cat/wp/lib/113 : append repository to /md0/md5_all.
/ad2/2cat/wp/lib/112 : append repository to /md0/md5_all.
/ad2/2cat/widescreen/lib/116 : append repository to /md0/md5_all.
/ad2/2cat/widescreen/lib/115 : append repository to /md0/md5_all.
/ad2/2cat/touhou/src : generate repository to /md0/md5_all.
[中間省略超過五千行...]
/mirror/2cat/newnew/april/src : no file.
/mirror/2cat/hd/src : append repository to /md0/md5_all.
/mirror/2cat/7d/src : append repository to /md0/md5_all.
/mirror/2cat/22d/src1 : append repository to /md0/md5_all.
/mirror/2cat/21d/src : append repository to /md0/md5_all.
/mirror/2cat/20d/src : append repository to /md0/md5_all.
/mirror/2cat/14d/src : append repository to /md0/md5_all.
  • 將圖庫裡的每個 src/lib 的圖檔,產生 repository record(每一行的組成是 md5-checksum file-size file-path/name),且塞到 /md0/md5_all 供後續處理。
  • 當圖庫裡的 src/lib 圖檔數量越多,執行時間就越久。
  • 越久沒執行 script 整理圖庫,那需要重新產生 repository record 的目錄越多(只要目錄有新進檔案,就會清除掉舊的 repository record),執行時間就越久。
2008年 4月28日 周一 18時03分16秒 CST start....
Sorting MD5.... done.
  • 將所有 /md0/md5_all 裡面的資料依 md5 checksum 排序供後續處理。
  • 記錄越多筆,執行時間就越久。
2008年 4月28日 周一 18時10分59秒 CST start....
Parting MD5.... done.
  • 因為 /md0/md5_all 的檔案太大了,造成後面要 grep 用的時候效率被嚴重無用地拖慢,所以先切成 16 個(0-F)供後面分別使用,不過將來可能改為切成 256 個(00-FF),因為檔案超過一千萬個了...。
  • 記錄越多筆,執行時間就越久。
2008年 4月28日 周一 18時42分25秒 CST start....
Counting duplicate MD5.... done.
  • 抓出有產生重複的 md5 checksum。
  • 記錄越多筆,執行時間就越久。
2008年 4月28日 周一 18時43分43秒 CST start....
Generating MD5 grep script.... done.
Greping MD5.... done.
  • 抓出 md5 checksum 重複的檔案,如果檔案大小不同的話,另外存一份備查。
  • 重複 md5 checksum 的記錄越多筆,執行時間就越久。
2008年 4月28日 周一 19時01分48秒 CST start....
Remove duplicate file.... done.
Total remove 28097 files.
  • 移除 md5 checksum 重複且檔案大小一樣的檔案。
  • 重複的檔案越多,執行時間就越久。
2008年 4月28日 周一 19時18分33秒 CST done.

沒有留言: