在文件系統中存儲大量文件/ blob的常用技術是使用散列函數來確定文件路徑;例如散列(標識符) - >「o238455789」 - > o23/8455/789 (通常也有散列衝突策略)使用散列函數進行文件存儲?
這種技術是否有名稱(它是'模式'?)我可能會搜索ACM Digital Library或類似的在線計算機文獻數據庫。
是否有任何書籍/論文可以探索問題/解決方案?
PS謝謝你的有用的筆記 - 但沒有解決上面給出的技術。
在文件系統中存儲大量文件/ blob的常用技術是使用散列函數來確定文件路徑;例如散列(標識符) - >「o238455789」 - > o23/8455/789 (通常也有散列衝突策略)使用散列函數進行文件存儲?
這種技術是否有名稱(它是'模式'?)我可能會搜索ACM Digital Library或類似的在線計算機文獻數據庫。
是否有任何書籍/論文可以探索問題/解決方案?
PS謝謝你的有用的筆記 - 但沒有解決上面給出的技術。
這種聽起來像sharding,但我可能錯過了微妙之處。
,同樣我沒有看到它的許多文章 - a few on highscalability.com
@克里斯金普頓
這被稱爲索引。分片或分區更多地涉及如何分割文件。
我認爲這是微軟在SQL Server 2008中用FILESTREAM存儲完成的。它允許在SQL Server內部存儲BLOB數據,但允許您直接從磁盤訪問文件,從而爲您提供一蹴能力的性能。
微軟發佈了managing unstructured data白皮書,你可能會感興趣。 還有一個MSDN article describing FILESTREAM以及利弊&利弊文件存儲&是否爲BLOB或不BLOB
美國專利5742807涉及這
http://www.freepatentsonline.com/5742807.html
系統和用於管理多個電子存儲文檔的開放文檔存儲庫採用單向散列方法函數爲存儲文檔計算散列作爲索引鏈接。文檔管理索引將儲存在儲存庫中的原始文檔的屬性映射到散列和文檔。散列到位置索引將散列映射到存儲庫的文件系統中的文檔的地址位置。該屬性指向散列,然後指向將該屬性鏈接到位置的位置。