中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

云計(jì)算和數(shù)據(jù)

這篇博客對(duì)在云計(jì)算解決方案中操作數(shù)據(jù)進(jìn)行總覽性的介紹。

概覽

對(duì)于絕大多數(shù)解決方案而言,數(shù)據(jù)都是至關(guān)重要的一部分。在云計(jì)算里面,絕大多數(shù)現(xiàn)成的建議都可以直接拿來(lái)用。但是云計(jì)算也有其獨(dú)特之處。這篇博客將討論以下兩個(gè)用例:

  • 將你存放在云中的數(shù)據(jù)發(fā)布至全世界
  • 在云端的項(xiàng)目中使用你本地的數(shù)據(jù)。

通用的建議

無(wú)論是哪種用例,這些建議都是通用的。

選擇一個(gè)拓?fù)?/h3>

在SOA的世界中,最重要的一個(gè)概念就是契約(contract)。在云計(jì)算的世界中,有關(guān)通信的最重要的概念也是契約。當(dāng)一個(gè)契約被很多云計(jì)算解決方案使用之時(shí),我們就可以把它稱(chēng)作一個(gè)拓?fù)淞恕?/p>

現(xiàn)在我們只討論數(shù)據(jù)通信。如果你選擇了微軟的解決方案,我們推薦你使用Open Data Protocol (OData)。OData是基于諸如HTTP和AtomPub的國(guó)際標(biāo)準(zhǔn)創(chuàng)建的,它提供了一個(gè)跨平臺(tái)的數(shù)據(jù)通信的方案。如果你云端的程序使用OData來(lái)發(fā)布數(shù)據(jù),這個(gè)世界上的任何一個(gè)程序,只要是支持OData標(biāo)準(zhǔn),就都能享用你的數(shù)據(jù)。同理,你云端的程序也能使用OData來(lái)訪問(wèn)你本機(jī)的數(shù)據(jù)。

很多目前的微軟產(chǎn)品已經(jīng)在應(yīng)用OData了。例如:windows Azure Table Storage,Dallas,SharePoint 2010,SQL Server 2008 R2,等等。

如果你打算使用其他的拓?fù)洌斜匾屑?xì)思考它們的可伸縮性,有多少人在使用它們,等等。

選擇一門(mén)技術(shù)

既然拓?fù)湟堰x定,下一步就是選擇一門(mén)技術(shù)來(lái)實(shí)現(xiàn)這個(gè)拓?fù)淞恕?/p>

如果你選擇了微軟的解決方案,我們推薦你使用WCF來(lái)處理所有程序間的通信。針對(duì)數(shù)據(jù)通信,WCF Data Services自然是最好的選擇。

首先,WCF Data Services是WCF服務(wù),所以你可以使用所有現(xiàn)有的WCF知識(shí)。其次,WCF Data Services已經(jīng)實(shí)現(xiàn)了OData拓?fù)洌谑悄憧梢灾铝τ谀愕臄?shù)據(jù)格式在你的程序中的表示,而不是AtomPub/JSON這些真正在網(wǎng)絡(luò)上傳遞的數(shù)據(jù)格式。再有,WCF Data Services致力于數(shù)據(jù)傳輸,而不是數(shù)據(jù)存儲(chǔ)。你的數(shù)據(jù)可以存放在任何位置:本地的數(shù)據(jù)庫(kù),云端的數(shù)據(jù)庫(kù),外部的web services,xml文件,等等。無(wú)論數(shù)據(jù)是怎么來(lái)的,你都可以用同樣的方式來(lái)發(fā)布/使用它們。

如果你選擇了其他技術(shù),有必要仔細(xì)考慮使用該技術(shù)的需要花費(fèi)多少精力來(lái)完成你的解決方案,該技術(shù)能否提供將來(lái)的解決方案擴(kuò)展,等等。

接下來(lái)我們來(lái)看看微軟的產(chǎn)品如何幫助你們完成上述兩個(gè)用例。

將你存放在云中的數(shù)據(jù)發(fā)布至全世界

許多云計(jì)算解決方案都不是孤立的,它們需要和外部世界交互。說(shuō)到數(shù)據(jù),你很可能直接了當(dāng)?shù)姆磻?yīng)出來(lái)DaaS (Data as a Service,數(shù)據(jù)即服務(wù))。

云計(jì)算的數(shù)據(jù)可以存放在許多地方,而且數(shù)據(jù)本身也是非常多樣化的。本文將致力于討論結(jié)構(gòu)化的數(shù)據(jù)(例如xml),以及關(guān)系型數(shù)據(jù)(例如關(guān)系數(shù)據(jù)庫(kù))。當(dāng)前微軟提供了兩大產(chǎn)品用于在云中存放數(shù)據(jù)。

  • Windows Azure Table Storage:用于存儲(chǔ)結(jié)構(gòu)化數(shù)據(jù)。使用動(dòng)態(tài)架構(gòu) (dynamic schema)。
  • SQL Azure:用于存儲(chǔ)關(guān)系型數(shù)據(jù)。使用靜態(tài)架構(gòu)(fixed schema)。

下面這張表格比較了靜態(tài)架構(gòu)和動(dòng)態(tài)架構(gòu)各自的優(yōu)勢(shì)。

靜態(tài)架構(gòu)

動(dòng)態(tài)架構(gòu)

關(guān)系型數(shù)據(jù)庫(kù),例如SQL Azure

Windows Azure Table Storage

經(jīng)過(guò)了幾十年驗(yàn)證的可靠架構(gòu)

高度可擴(kuò)展性(統(tǒng)一的存儲(chǔ),但是不同的程序可以使用不同的數(shù)據(jù)結(jié)構(gòu))

可以使用許多現(xiàn)成的工具

基于OData Web 協(xié)議

可以使用O/R Mapping方便的在OO編程語(yǔ)言中操作數(shù)據(jù)

體現(xiàn)出了動(dòng)態(tài)語(yǔ)言(dynamic languages)的優(yōu)勢(shì)

針對(duì)你具體的場(chǎng)景,請(qǐng)選擇一個(gè)合適的數(shù)據(jù)存儲(chǔ)方式。通常來(lái)說(shuō),如果你的服務(wù)對(duì)外部世界開(kāi)放了寫(xiě)的權(quán)限(允許外部世界更新數(shù)據(jù)),動(dòng)態(tài)架構(gòu)是一個(gè)比較好的選擇,因?yàn)榈谌降某绦蚝苡锌赡苄枰m當(dāng)?shù)男薷哪闾峁┑臄?shù)據(jù)結(jié)構(gòu)。然而目前Windows Azure Table Storage還有一些局限性,它并未實(shí)現(xiàn)OData所有的功能,再加上關(guān)系模型已經(jīng)有了好幾十年的經(jīng)驗(yàn),你的開(kāi)發(fā)人員也很可能非常熟悉關(guān)系模型,所以如果對(duì)你而言使用動(dòng)態(tài)架構(gòu)成本太高,請(qǐng)選擇靜態(tài)架構(gòu)。

無(wú)論你選擇了何種架構(gòu),OData和WCF Data Services都能起到非常大的作用。

剛才已經(jīng)說(shuō)過(guò),WCF Data Services可以使用任意的數(shù)據(jù)源。它默認(rèn)就提供了兩種數(shù)據(jù)提供者:ADO.NET Entity Framework (EDM)和LINQ to SQL (L2S)。如果你使用的是這兩種數(shù)據(jù)源,通常只需要寫(xiě)一小部分代碼即可完成一個(gè)項(xiàng)目。如果你選擇SQL Azure存放數(shù)據(jù),你就可以使用EDM和L2S做數(shù)據(jù)源。

如果你使用了其它數(shù)據(jù)源,(例如Windows Azure Table Storage),你需要將你的數(shù)據(jù)模型轉(zhuǎn)換成WCF Data Services理解的模型。如果你的數(shù)據(jù)是只讀的,這個(gè)過(guò)程就很簡(jiǎn)單,因?yàn)槟阒恍枰獙?xiě)一個(gè)很普通的類(lèi)來(lái)表示你的數(shù)據(jù)結(jié)構(gòu)。如果你需要完整的CRUD功能,就必須實(shí)現(xiàn)IUpdatable這個(gè)接口。這被稱(chēng)作“Reflection provider for WCF Data Services”。在更高級(jí)的場(chǎng)合中,你還可以使用“Custom Data Service Providers”。詳細(xì)信息可以參考http://msdn.microsoft.com/en-us/library/dd672591(VS.100).ASPx。

Windows Azure Table Storage本身也是使用OData拓?fù)洌阅憧赡軙?huì)試圖讓你的客戶直接訪問(wèn)你的數(shù)據(jù)源。但是在絕大多數(shù)的場(chǎng)合下,請(qǐng)不要這樣做。你必須竭盡全力保護(hù)你的storage賬號(hào)的key(把它想象成你的密碼)。如果你將自己的密碼給與一個(gè)受你信任的用戶使他/她能直接訪問(wèn)你的Table Storage,而他/她濫用了這份權(quán)限,到最后,使你必須支付你的storage賬號(hào)的費(fèi)用。我們推薦用戶將數(shù)據(jù)和業(yè)務(wù)邏輯封裝成服務(wù),使用WCF Data Services就是完成這一任務(wù)的很好選擇。

你可以從All-In-One Code Framework (Azure).zip 中下載一個(gè)示例,它演示了如何使用WCF Data Services將存放在Windows Azure Table Storage中的數(shù)據(jù)發(fā)布至全世界。示例的名稱(chēng)是:CSAzureTableStorageWCFDS/VBAzureTableStorageWCFDS該示例也提供了一個(gè)Silverlight客戶端用于測(cè)試服務(wù)。

在云端的項(xiàng)目中使用你本地的數(shù)據(jù)

另一個(gè)常見(jiàn)的場(chǎng)景就是在云端的項(xiàng)目中使用你本地的數(shù)據(jù)了。絕大多數(shù)場(chǎng)合下,這些數(shù)據(jù)都使用了靜態(tài)架構(gòu)存儲(chǔ)于關(guān)系型數(shù)據(jù)庫(kù)中(例如SQL Server),所以你通常不會(huì)考慮如何存儲(chǔ)數(shù)據(jù)。在這個(gè)場(chǎng)景中,你更關(guān)心的是可連接性以及安全性。

很多公司都有防火墻和NAT。很難找到一臺(tái)機(jī)體,既可以自interNET訪問(wèn),又擁有一個(gè)固定的IP地址,所以要在云端的程序直接連本地?cái)?shù)據(jù)庫(kù)也就很難了。權(quán)限控制也是一個(gè)問(wèn)題。云端的程序并不在你的公司的局域網(wǎng)中,和數(shù)據(jù)庫(kù)不在同一個(gè)域里,要使用集成Windows驗(yàn)證是不可能的,而federated驗(yàn)證目前還沒(méi)有針對(duì)數(shù)據(jù)庫(kù)提供很好的解決方案。

為了解決第一個(gè)問(wèn)題,微軟提供了Windows Azure platform AppFabric Service Bus。Service Bus就好比你本機(jī)服務(wù)和云端程序之間的橋梁,本地服務(wù)對(duì)于Service Bus而言其實(shí)是一個(gè)客戶端,所以即使本地服務(wù)器位于NAT之后,它還是可以和Service Bus交流。Service Bus會(huì)把你云端程序發(fā)送的消息傳達(dá)給你本地的服務(wù)。

Service Bus同時(shí)支持TCP和HTTP。大多數(shù)防火墻至少是允許outbounding連接通過(guò)80/443端口的,而這也正是Service Bus的最低需求。這樣一來(lái),Service Bus便可以穿越NAT和防火墻。

安全是一個(gè)很復(fù)雜的話題,本文不準(zhǔn)備詳細(xì)探討。但是有必要指出,Windows Azure platform AppFabric Access Control在很多場(chǎng)合下都是很有幫助的,而且它默認(rèn)就和Service Bus集成。

當(dāng)然,OData和WCF Data Services在這個(gè)用例中也很有幫助。

你可以從All-In-One Code Framework (Azure).zip 中下載一個(gè)示例,它演示了如何使用Service Bus和WCF Data Services在云端程序訪問(wèn)本地的SQL Server數(shù)據(jù)。項(xiàng)目名稱(chēng)是:CSAzureServiceBusWCFDS/VBAzureServiceBusWCFDS。這個(gè)項(xiàng)目也提供了一個(gè)ASP.NET客戶端用于測(cè)試服務(wù)。你可以很輕松的將這個(gè)客戶段轉(zhuǎn)換成一個(gè)Windows Azure的Web Role,真正的在云端進(jìn)行測(cè)試。

NET技術(shù)云計(jì)算和數(shù)據(jù),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 日韩中文字幕久久 | 国产精品99精品久久免费 | 成人看片在线观看 | 日本大香伊一区二区三区 | 欧美性乱 | 久久大| 一区二区三区亚洲视频 | 国产极品粉嫩美女呻吟在线看人 | 亚洲成人免费网址 | 精品国产一区二区在线 | 九色网址 | 国产欧美日韩一区二区三区在线观看 | 一级全黄少妇性色生活免费看 | 欧美精品一二三区 | 国产亚洲精品a | 伊人激情网 | 国产日韩精品视频 | 日韩一区二区三区视频 | 中文字幕 在线观看 | 国产欧美一区二区三区日本久久久 | 亚洲精品视频网站在线观看 | 欧美 日韩 国产 成人 | 欧美精品一级 | 狠狠爱免费视频 | 91大神在线看 | 日韩在线免费播放 | 精品久久电影 | 国产精品99 | 在线日韩欧美 | 国产在线一区二区 | 国产在线资源 | 久久久这里都是精品 | 日韩一二区 | 欧美在线视频一区 | 一区二区中文字幕 | 色黄网站 | 久久久久久99 | 大陆一级毛片免费视频观看 | 最新中文字幕在线 | 在线观看亚洲 | 麻豆国产一区二区三区四区 |