我想將具有元數據的文檔存儲在Web應用程序中,以便人員可以在層次結構中查看它們。何時將元數據存儲在文件系統而不是數據庫中?
我收集到一個典型的方法是爲每個文檔創建一個數據庫條目,將元數據存儲在數據庫中並將文件存儲在文件系統中。
在文件系統上存儲文檔和元數據似乎更簡單快捷。所以一個目錄可能看起來像這樣
$ ls subdirectory
.json
Subsubdirectory
bar.pdf
bar.json
foo.tex
foo.json
然後我可以從json文件(或任何我使用的格式)獲取元數據。我可以根據子目錄/ foo.json的內容呈現子目錄/ foo.html。我可以根據子目錄/ .json的內容和其他子json文件的內容呈現subdirectory.html。
我想到的主要缺點是根據元數據文件的內容進行搜索可能會比較困難(儘管我可以基於文件系統級元數據進行搜索)。還有什麼其他的缺點?如果人們使用這種方法,爲什麼我聽不到呢?
編輯:我真的不太在意搜索;如果我建立某種搜索,它可能會在一個單一的,小的目錄。
除了搜索功能,如果我已經在使用文件系統的文件系統,您似乎對存儲元數據的數據庫和文件系統方法漠不關心。我的看法是否準確? –
您還必須管理兩組權限 - 一個在數據庫中,另一個在文件系統中 - 並保持或多或少同步。 –
我肯定會使用'mongoDB'來存儲'json'。如果您必須搜索或向所有節點添加額外信息,請勿將其存儲在FS上。如果您存儲了大量文件或者流量很大,那麼請不要將它存儲在FS上。 –