從可查詢的分布式解決方案,如MongoDB,到簡單的分布式Key/Value存儲解決方案,如Cassandra。此外,還有Riak,Tokyo Cabinet,Voldemort,CouchDB和Redis。但目前僅有少量的NoSQL項目支持在Windows平臺上運行,如果要說到生產應用那就更少了。
Memcached
Memcached傳統上認為它不屬于NoSQL的范疇,而是一個分布式Key/Value內存緩存解決方案,它可以用來存儲各種各樣的臨時數據集,存儲方式和其它NoSQL數據庫解決方案沒有什么差別。

NorthScale提供了適合于32位和64位Windows平臺的Memcached程序包,可從這里免費下載。
MongoDB

MongoDB是一個基于文檔(JSON風格)的數據存儲引擎,通過它的自動分片功能可實現良好的水平擴展能力,它使用了一個簡單但功能很強大的基于JavaScript/JSON的查詢語言,提供了快速插入和更新能力,主要歸功于它的低開銷原子修改程序。此外,使用Map/Reduce實現了跨多個MongoDB數據庫聚合和數據處理。
MongoDB背后的10Gen公司前不久正式宣布了對Windows平臺的支持。MongoDB目前的最新版本是1.6.0,許多大型Web站點現在都在使用它。關于MongoDB Windows版本的更多信息請移步這里,對應的版本可從這里下載。
sones GraphDB

sones GraphDB是一個企業圖形數據存儲引擎,它使用C#語言開發,并且是開源的,對于非商業目的可以免費下載,但如果用于商業目的則需要購買商業許可。
圖形數據庫和我們常說的NoSQL數據庫存儲方式是不同的,它們更善于處理一類特定的問題:數據集包含了大量的關系,需要快速高效地遍歷這些關系。
圖形數據庫一個常見的用例就是用來存儲社交關系或社交圖,通常,這些社交圖由許多節點組成,節點之間存在許多獨立的關系,這是傳統關系數據庫很難處理好的問題域。如果你對sones GraphDB感興趣,可從這里下載它的源代碼,更多信息請訪問該項目的官方網站。
Voldemort
Voldemort是一個分布式Key/Value存儲系統,LinkedIn用它解決了網站的高擴展性存儲問題,簡單的分區功能已經不能滿足LinkedIn的需要。Voldemort使用Java編寫,因此借助Java的跨平臺特性,它也可以運行在Windows平臺上。請閱讀這篇文章了解如何在Windows平臺上安裝Voldemort。
NoSQL項目機會
對于Microsoft世界來說這是一個激動人心的時刻,但目前Microsoft陣營采用NoSQL的節奏還非常慢,因對機會也比較多,如果能開發出優秀的NoSQL托管存儲解決方案,一定會很受歡迎。
ESENT分布式數據存儲
關于ESENT,我能想到最恰當的比喻是,它是Microsoft世界的BerkeleyDB,鮮為人知,很少有.NET開發人員使用它,但它的性能和可靠性已經經受住了時間的考驗。
ESENT是一個原生支持Windows的嵌入式數據庫引擎,它是CodePlex上的一個托管項目,最新的Windows版本已經內置了esent.dll。
我做了一些測試,它的速度真是太快了,每秒可以執行大約10萬次插入操作,夠變態吧。關于性能的更多統計數字請看這里。
內存字典式分布式數據存儲
內存字典式分布式數據存儲和ESENT有點類似,但不同的是它的數據完全存儲在內存中。他可以作為分布式緩存的基礎,也可以跨一系列節點復制數據而實現持久化,任何時間只要有一個節點可用,數據都是可以訪問的,Amazon或其它基于云的非持久化服務器解決方案可以完美地實現托管,我是這種解決方案的堅決支持者。
最后的想法
對.NET開發人員來說,使用NoSQL解決方案目前還有一些限制,但隨時間的推移,肯定會有越來越多的NoSQL解決方案可供選擇,作為一名.NET開發人員,我們也應該參與到這些項目中去,以期早日解決現在存在的問題,這也是.NET開發人員的一次難得的機會。
我認為能給Microsoft陣營介紹NoSQL解決方案是一件非常興奮的事,以后我也將努力參與到這些項目中去,如果你也愿意成為一名志愿者,我們隨時歡迎你。
作者:Gezidan
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。
本文轉載自 http://database.51cto.com/art/201008/219470.htm
posted on 2011-09-30 09:42
日需博客 閱讀(1847)
評論(0) 編輯 收藏 引用 所屬分類:
技術文章 、
轉載