SVN-兩種存儲方式的比較(BDB vs. FSFS)


Subversion 的版本庫(repository),就是位於服務器端,統一管理和儲存數據的地方。本文中,我們以 Linux 為例,介紹在服務器端配置和管理 Subversion 版本庫的基本方法。

要創建一個版本庫,首先要確定采用哪種數據存儲方式。在 Subversion 中,版本庫的數據存儲有兩種方式,一種是在 Berkeley DB 數據庫中存放數據;另一種是使用普通文件,采用自定義的格式來儲存,稱為 FSFS。

兩種存放方式各有優缺點,讀者可以參考 http://svnbook.org/ 上面的文檔來了解兩者詳細的比較和區別,這里,我們僅引用上述文檔當中的簡單對照表,給出一個簡明的比較。

特性 Berkeley DB FSFS
對操作中斷的敏感 很敏感;系統崩潰或者權限問題會導致數據庫“塞住”,需要定期進行恢復。 不 敏感
可只讀加載 不能 可 以
存儲平台無關 不能 可 以
可從網絡文件系統訪問 不能 可 以
版本庫大小 稍大 稍 小
擴展性:修訂版本樹數量 無限 制 某些本地文件系統在處理單一目錄包含上千個條目時會出現問題。
擴展性:文件較多的目錄 較慢 較慢
檢出最新代碼的速度 較快 可以
大量提交的速度 較慢,但時間被分配在整個提交操作中 較 快,但最后較長的延時可能會導致客戶端操作超時
組 訪問權處理 對於用戶的 umask 設置十分敏感,最好只由一個用戶訪問。 對 umask 設置不敏感
功能成熟時間 2001 年 2004 年

確定了具體的數據存儲類型,只要在命令行當中執行 svnadmin 命令就可以創建一個 Subversion 版本庫,命令如下:

# 創建文件夾
$ mkdir /etc/svn/
$ mkdir /etc/svn/repos
# 運行創建版本庫的命令,指定數據存儲為 FSFS,如果要指定為 Berkeley DB,則將 fsfs 替換為 bdb
$ svnadmin create --fs-type fsfs /etc/svn/repos

via:http://www.ibm.com/developerworks/cn/java/j-lo-apache-subversion/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM