眾所周知,NoSQL運動旨在成為大數(shù)據(jù)時代傳統(tǒng)關(guān)系數(shù)據(jù)庫管理系統(tǒng)的替代品。如今Microsoft對開源的態(tài)度有所轉(zhuǎn)變,RavenDB就是很好的例子。Microsoft對RavenDB(NoSQL數(shù)據(jù)庫)的認可令很多人感到驚訝。RavenDB可以輕易的替代關(guān)系數(shù)據(jù)庫管理系統(tǒng)并兼容以往的.NET應(yīng)用。
NoSQL的出現(xiàn)與發(fā)展是非常必要的,NoSQL系統(tǒng)的速度和高擴展性是其具備的優(yōu)勢,而這并不是傳統(tǒng)關(guān)系數(shù)據(jù)庫的強項。NoSQL為Amazon、Google等需要處理大數(shù)據(jù)的公司提供行之有效的解決方案。如鍵值存儲鼻祖BigTable以及文檔數(shù)據(jù)庫CouchDB。
而相關(guān)的云存儲解決方案提供了在傳統(tǒng)關(guān)系數(shù)據(jù)庫之外的選擇,包括Windows Azure Table(鍵值類型)以及基于Hadoop的Amazon EC2。
將數(shù)據(jù)存儲在行或列的固定模式是像SQL Server和Oracle等傳統(tǒng)關(guān)系性數(shù)據(jù)庫的基本特性。雖然許多人認為傳統(tǒng)的關(guān)系數(shù)據(jù)庫將逐漸消亡,但不同的情況需要不同的工具。隨著大量不同類型數(shù)據(jù)持續(xù)增長,未來非結(jié)構(gòu)化數(shù)據(jù)存儲將成為關(guān)鍵技術(shù)。
RavenDB是針對Windows/.NET平臺而設(shè)計的文檔數(shù)據(jù)庫。RavenDB的出現(xiàn)將.NET應(yīng)用與非關(guān)系數(shù)據(jù)庫連接到一起。數(shù)據(jù)以Shcema-less方式存儲,并直接通過HTTP、RESTful API或更方便的.NET客戶端API連接。.NET客戶端API使用LINQ操作RavenDB數(shù)據(jù)庫文檔存儲。
實戰(zhàn)RavenDB
在安裝RavenDB之前,你需要安裝.NET Framework 4.0。RavenDB可在三種不同的模式下運行,包括作為Windows服務(wù)、IIS 應(yīng)用程序以及嵌入.NET 應(yīng)用程序。
最新版RavenDB包含以下組件:
●Client:基于.NET Framework 4.0輕量級客戶端
●Client 3.5:基于.NET Framework 3.5輕量級客戶端
●Silverlight:Silverlight 4.0客戶端
●EmbeddedClient:EmbeddedClient(包含嵌入式模式下RavenDB所需的文件)
●Server:RavenDB服務(wù)器模式所需文件
●Web: 在IIS模式下RavenDB所需的文件
●Bundles: RavenDB擴展文件
●Samples:RavenDB樣本應(yīng)用
以下命令用于設(shè)置服務(wù)器端
-
<Raven root directory>\Server\Raven.Server.exe /install
安裝成功后可通過http://localhost:8080/raven/studio.html訪問。如圖1。由于該接口使用Silverlight,可能會需要安裝或升級Silverlight組件。
點擊查看大圖
可以點擊創(chuàng)建樣本數(shù)據(jù)按鈕填充樣本數(shù)據(jù)存儲以了解RavedDB是如何工作的。
點擊查看大圖
圖2顯示打開RavenDB以及數(shù)據(jù)是如何存儲進RavenDB的。這組數(shù)據(jù)創(chuàng)建了以下屬性:AlbumArtUrl、Artist、Genre、Price、Title和Count Sold。
-
{
- "AlbumArtUrl": "/Content/Images/placeholder.gif",
- "Artist": {
- "Id": "artists/133",
- "Name": "Stevie Ray Vaughan & Double Trouble"
- },
- "Genre": {
- "Id": "genres/6",
- "Name": "Blues"
- },
- "Price": 8.99,
- "Title": "In Step",
- "CountSold": 0
- }
樣式數(shù)據(jù)庫具備一個特有的網(wǎng)址(http://localhost:8080/raven/studio.html#/edit?id=albums/614&database=Default),同時還可以通過URL訪問其他的項目。
例如流派的信息可通過如下網(wǎng)址訪問:http://localhost:8080/raven/studio.html#/edit?id=genres/6&database=Default,同時在Web頁面還可編輯數(shù)據(jù)。
數(shù)據(jù)庫的未來
NoSQL專家預(yù)測傳統(tǒng)關(guān)系數(shù)據(jù)庫將要消亡的想法是不理智的。不同的場景需要不同的應(yīng)用。Google、Amazon、Microsoft等巨頭背后的各種產(chǎn)品使未來數(shù)據(jù)庫的發(fā)展具有光明的未來。而對于未來數(shù)據(jù)庫的發(fā)展,您又是怎么認為的呢?(李智/編譯)
原文鏈接:techrepublic.com