iT邦幫忙

0

幾十萬個圖檔的目錄要怎麼安排?

每個圖檔大約10K左右,檔名是網頁要對應的index序號,有些是 8碼有些是10碼數字,再加 .jpg。若 12345678.html 就對應秀出 1235678.jpg。
把所有jpg檔都塞在同一個目錄,似乎有存取效率的問題,而非智舉。
是否有什麼好的方法來安排圖檔分存在不同的目錄,而又有容易及兼顧存取效率的方式,根據index序號指到圖檔所在?
想知道有什麼現成的方法,或哪些可選擇的方案。

我也有這樣的問題
單是圖檔分類就有很大的重疊性
例如太陽
我可能需要同時分類到大自然、星辰....
以免用戶找不到(另一個問題:企業文件搜尋)

我想,可能還是需要手動處理吧,分類+檔案命名+放置處,之後倒是可以自動抓

2 個回答

20
Foster
iT邦研究生 1 級 ‧ 2009-09-30 13:05:26
最佳解答

的確,同一個目錄同時存放很多檔案效能確實不好。
可根據檔名前一碼(或兩碼、三碼...)來產生多個目錄,當然不必到太多碼不然就沒意義了,符合的檔案就放入相對應的目錄,一方面檔案可以分散,一方面尋找也不會很困難。
甚至也可以根據每一碼(或每兩碼、每三碼...)建立一層層目錄來規劃,這也不用太多層,不同檔案根據檔名前幾碼放置對應的一層層目錄中。
簡單的說就是產生的目錄與檔案要有相對應的關連性比較好!

12
pantc328
iT邦研究生 1 級 ‧ 2009-09-30 15:29:46

看不懂,你的網頁跟圖檔為什麼這麼多.
圖型分類要問你自己.問別人沒用.
圖檔分類.要看那圖的意義何在?你要照意義分類.
網頁也要分類.總不可能取Page1,Page2,Page3...
分類是藝術.像我寫百萬行的Code.上千萬的變數.圖型..你沒分類或命名規則.你要找到一個值是非常的困難.
所以比如說你的圖放在HomePage你就取HomePagexxxx放在HomePage\xxx.如果有關時間日期就HomePage2009093001..如果圖型有意義如TitileIco...
Product就放在Product下.在像我公司做的範例 Product\Ford\Focus\FD010101A01
這樣做產品分類.

會有上萬個圖檔,並非量少的static網頁的議題。最具體的例子是博客來網路書店,所有項目(書)的index序號是博客來自訂的,序號與該項目有什麼特性,完全沒關聯。所有書的詳細資料,都是相同的網址,只是參數不同,所以不同類別在不同目錄這原則,在動態產生網頁的環境並不適用。
而動態產生的網頁項目的分類,只是在於某欄位定義類別,最多也只是利用rewrite url的方式,模擬出像是不同的目錄,但實際的檔案系統的目錄是不存在的。

傳統靜態產生的網頁及所要呈獻的圖檔,在同一個目錄,是最直覺的作法。動態產生網頁的相對應的圖:一、就圖檔名而言,能與index序號一致,是最方便,不然又必須在資料庫裡加上「圖檔名」的欄位。二、就圖檔的所在位置而言,全部相同最簡單,但量大到數萬筆,會有存取效率的問題;若以分類方式存的話,單一個序號,沒辦法知道在何目錄,而一定要query資料庫查出該分類屬性,才能知道在何目錄。而博客來的各圖形所在的位置,是與其index序號相關,不需額外的 圖檔目錄 的變數,不用不必要的query,就可指到圖檔位置,又可使各圖檔分散在不同目錄,而不至有如題的存取效率的問題。
所以才會問,還有什麼好的安排設計,類似博客來那樣,有效地分散儲存,又可容易地被讀取。

我要發表回答

立即登入回答