為啥要PATCH?
Mnesia最大的缺陷是存儲限制。這不是數據庫系統(tǒng)的錯誤,因為Mnesia能夠控制虛擬數據的大小。主要的問題在于過時的Erlang DETS存儲引擎,速度慢并且使用的32位偏移量(限制單文件大小為2GB)。
思路?
超乎想象的 mnesia 補丁包 mnesiaex 。這個東西解除了加在 mnesia 數據庫系統(tǒng)上所有的限制(雖說上面已經提到,實際上 mnesia 代碼本身沒有什么真正的限制)——你現在可以用 SleepyCat/BerkeleyDB/MySQL/Amazon S3/Tokyo Cabinet/… 甚至是你自己喜歡的某種東西來當作 mnesia 的后端,就像 ets/dets 一樣。而訪問的接口仍保持不變——繼續(xù)沿用 mnesia 的接口,一行也不用改。 DIY 這種擴展也變得相當容易,寫一個 behavior 就成了。
實現過程
1:與從源代碼編譯的方式安裝Erlang
tar xvf otp_src_R12B-5.tar.gz
cd otp_src_R12B-5
./configure & make & make install
注意:我的系統(tǒng)是RHEL 5.3,默認安裝目錄為/usr/local/erlang
2:安裝Mnesiaex
tar xvf mnesia-4.4.7.6.tar.gz
cd mnesia-4.4.7.6
./configure --prefix=/usr/local
make
make check
make install
注意:這里一定要指定prefix,不然就裝到/usr目錄去了
3:安裝Tokyo Cabinet
tar xvf tokyocabinet-1.4.10.tar.gz
cd tokyocabinet-1.4.10
./configure --prefix=/usr
make & make install
3:安裝tcerl
tar xvf tcerldrv-1.3.1e.tar.gz
cd tcerldrv-1.3.1e
./configure --prefix=/usr
make & make install
tar xvf tcerl-1.3.1e.tar.gz
cd tcerl-1.3.1e
./configure --prefix=/usr/local
make & make install
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/jimmychou/archive/2009/03/13/3988468.aspx
posted on 2009-09-29 15:12
暗夜教父 閱讀(913)
評論(0) 編輯 收藏 引用 所屬分類:
erlang