偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

微軟SQL Azure云數(shù)據(jù)庫開發(fā)揭秘

數(shù)據(jù)庫 SQL Server
本文將深入SQL Azure云數(shù)據(jù)庫的開發(fā)工作,主要從SQL Azure的架構(gòu)、主要功能、訪問SQL Azure的數(shù)據(jù)、SQL和SQL Server功能比較這幾個方面來介紹。

應(yīng)該沒有開發(fā)者不認(rèn)識Microsoft SQL Server,但是肯定有開發(fā)者不知SQL Azure 為何物。SQL Azure 是微軟云計算平臺(Windows Azure Platform)的三大組成部分之一,是一個部署在云端的關(guān)系型數(shù)據(jù)庫引擎,它支持SQL Server中絕大多數(shù)和開發(fā)有關(guān)的功能。也可以簡單的認(rèn)為SQL Azure就是SQL Server的云端版本,但是還是有一些區(qū)別,我們將在下文進(jìn)行介紹。本文對SQL Azure做一個概述,主要從SQL Azure的架構(gòu)、主要功能、訪問SQL Azure的數(shù)據(jù)、SQL和SQL Server功能比較這幾個方面來介紹,以期大家對SQL Azure有一個整體性的認(rèn)識。

SQL Azure的架構(gòu)

就像微軟云計算服務(wù)平臺(在這里筆者認(rèn)為微軟云計算服務(wù)平臺包含了微軟云計算平臺,還包括了構(gòu)建在此平臺上的服務(wù),如living Service,當(dāng)然這只是作者的理解,值得商榷。)上的其它服務(wù)一樣,SQL Azure也是一個高可用性、高可擴(kuò)展性的數(shù)據(jù)實(shí)體服務(wù),這個服務(wù)跑在云端,或者說是跑在微軟公司在世界各地建立的數(shù)據(jù)中心上。

數(shù)據(jù)中心(Data Center,DC)通過實(shí)現(xiàn)統(tǒng)一的數(shù)據(jù)定義與命名規(guī)范、集中的數(shù)據(jù)環(huán)境,從而達(dá)到數(shù)據(jù)共享與使用的目標(biāo)。一個典型的數(shù)據(jù)中心常常跨多個供應(yīng)商和多個產(chǎn)品的組件,包括:主機(jī)設(shè)備、數(shù)據(jù)備份設(shè)備、數(shù)據(jù)存儲設(shè)備、高可用系統(tǒng)、數(shù)據(jù)安全系統(tǒng)、數(shù)據(jù)庫系統(tǒng)等等,當(dāng)前數(shù)據(jù)中心和下一代數(shù)據(jù)中心的參考架構(gòu)如圖1:示:

 

圖1 數(shù)據(jù)中心架構(gòu)

其實(shí)我們從上圖中的下一代數(shù)據(jù)中心架構(gòu)可以看出來,目前構(gòu)建云計算平臺的數(shù)據(jù)中心是就是上圖中下一代數(shù)據(jù)中心架構(gòu)的實(shí)現(xiàn)。微軟數(shù)據(jù)中心還提供了負(fù)載均衡、數(shù)據(jù)容災(zāi)、備份恢復(fù)功能,當(dāng)然,在未來它可能支持的功能有:MARS支持、空間坐標(biāo)數(shù)據(jù)和50GB的容量選項。還會提供一個SQL Azure Labs,其中包含一些未來可能具備的加強(qiáng)功能,比如將要亮相的OData Services。SQL Azure的整體架構(gòu)如圖2所示:

 
圖2 SQL Azure架構(gòu)

由圖2我們可以看出,SQL Azure是一個四層架構(gòu),基礎(chǔ)設(shè)施層(Infrastructure Layer)、平臺層(Platform Layer)、服務(wù)層(Service Layer)、客戶端層(Client Layer),基礎(chǔ)設(shè)施層、平臺層和服務(wù)層構(gòu)成了微軟數(shù)據(jù)中心。下面我們分別予以介紹。

基礎(chǔ)設(shè)施層

基礎(chǔ)設(shè)置提供了硬件支持和操作系統(tǒng),以及對服務(wù)層所運(yùn)行的服務(wù)管理。同時也是核心數(shù)據(jù)層,可以為一個數(shù)據(jù)中心提供多個共享服務(wù)。

平臺層

平臺層由三部分組成:SQL Server實(shí)例、SQL Server Fabric、管理服務(wù)。SQL Server實(shí)例就是一個SQL Server數(shù)據(jù)庫引擎。每個SQL Server數(shù)據(jù)庫引擎實(shí)例各有一套不為其他實(shí)例共享的系統(tǒng)及用戶數(shù)據(jù)庫。由于實(shí)例各有一套不為其他實(shí)例共享的系統(tǒng)及用戶數(shù)據(jù)庫,所以各實(shí)例的運(yùn)行是獨(dú)立的,一個實(shí)例的運(yùn)行不會受其他實(shí)例運(yùn)行的影響,也不會影響其他實(shí)例的運(yùn)行。在一臺計算機(jī)上安裝多個SQL Server實(shí)例,就相當(dāng)于把這臺計算機(jī)模擬成多個數(shù)據(jù)庫服務(wù)器,而且這些模擬的數(shù)據(jù)庫服務(wù)器是獨(dú)立且同時運(yùn)行的。

SQL Server Fabric是一個底層框架,是一個分布式的框架,集成了網(wǎng)絡(luò)、服務(wù)器和存儲,因此這個框架能夠使得SQL Azure自動進(jìn)行負(fù)載均衡、數(shù)據(jù)容災(zāi)、備份恢復(fù)。

管理服務(wù)能夠?qū)\(yùn)行在其上的服務(wù)進(jìn)行健康檢查、升級或者打補(bǔ)丁。并為SQL Server Fabric提供軟硬件支持。

服務(wù)層

服務(wù)層連接了客戶端層和平臺層,包含三大功能:數(shù)據(jù)提供(Provisioning)、賬單和計量(Billing and 、Metering)、連接路由(Connection Routing),期中Provisioning 列舉了微軟云計算平臺賬戶。服務(wù)層同時暴露了帶有SSL的列表數(shù)據(jù)流(Tabular Data Stream ,TDS)給客戶端層。

客戶端層

客戶端層是唯一運(yùn)行在微軟數(shù)據(jù)中心之外的一層,不是使用SQL Azure任何特殊的組件,而是使用了當(dāng)前客戶端上安裝的SQL Server的功能,如ADO.Net、WCF服務(wù)、ODBC、SQL Server管理工具??蛻舳藢邮褂肁PI初始化一個TDS連接,通過1433端口連接到SQL Azure上??蛻舳藢舆\(yùn)行我們使用數(shù)據(jù)的工具——SQL Server來構(gòu)建云應(yīng)用。

SQL Azure的主要功能

SQL Azure目前的不完全支持SQL Server上的所有功能,如分析服務(wù)、鏡像、報表服務(wù)以及能夠選擇不同的服務(wù)提供者提供不同的服務(wù)。這是因?yàn)楫?dāng)前的網(wǎng)絡(luò)狀況和云計算平臺部署需求所決定的,在將來肯定會提供更多功能,如Dallas。我們SQL Azure的主要功能分成三部分:數(shù)據(jù)庫功能、應(yīng)用程序功能和管理功能。

數(shù)據(jù)庫功能

支持的數(shù)據(jù)庫功能如下:

(1)表的增刪改查(CRUD),試圖、索引

(2)TSQL query JOIN statements

(3)觸發(fā)器

(4)TSQL functions

(***pplication stored procedures (only TSQL)

(6)Table constraints

(7)基于Session的臨時表

(8)Table variables

(9)Local transactions

(10)安全角色

(11)SUSER_SNAME函數(shù),返回當(dāng)前安全登錄名

(12)MARS,多活動結(jié)果集

不支持的數(shù)據(jù)庫功能如下:

(1)分布式查詢

(2)分布式Transactions

(3)任何 TSQL query and views改變或者恢復(fù)物理資源信息

(4)自定義數(shù)據(jù)類型

應(yīng)用程序功能

應(yīng)用程序功能不支持的功能有:

(1)Service Broker

(2)HTTP access

(3)CLR stored procedures

管理功能

SQL Azure支持?jǐn)?shù)據(jù)應(yīng)用層程序(Data-tier Applications),數(shù)據(jù)庫應(yīng)用層程序是一個包含了幾乎某一應(yīng)用所需要的數(shù)據(jù)庫及實(shí)例對象的實(shí)體,如表、視圖、存儲過程、登錄等等。有了實(shí)體以后,原本獨(dú)立的登陸、部署、維護(hù)就可以通過開發(fā)人員進(jìn)行開發(fā)來整合成為一個統(tǒng)一的整體,這樣的一個整體又叫應(yīng)用程序包,這樣DBA 就可以把原本獨(dú)立的對象視為一個數(shù)據(jù)庫應(yīng)用層的程序來進(jìn)行部署、監(jiān)控和管理。目前支持的數(shù)據(jù)層應(yīng)用程序有刪除、部署、提取和注冊數(shù)據(jù)層應(yīng)用程序包。不僅如此,還支持的管理功能有:

(1)計劃和統(tǒng)計

(2)索引開啟

(3)查詢開啟

SQL Azure不支持一下管理功能:

(1)數(shù)據(jù)庫復(fù)制

(2)SQL profiler

(3)SQL trace flag

(4)命令行備份

(5)配置和使用存儲過程sp_configure

有關(guān)SQL Azure更多不被支持的功能,對SQL Server 2008(R2)和SQL Server 2005有所不同,可以參考MSDN:

http://msdn.microsoft.com/en-us/library/ff394115.aspx

訪問SQL Azure中的數(shù)據(jù)

訪問SQL Azure中的數(shù)據(jù),我們可以通過APIs訪問,如ADO.Net、ODBC或者PHP中的數(shù)據(jù)庫訪問,他們使用TDS+SSL的方式來訪問。也可以通過基于Web的客戶端,如瀏覽器、WCF數(shù)據(jù)服務(wù)客戶端、SilverLight等方式,使用HTTP或HTTPS來訪問云中的數(shù)據(jù)。如圖3所示:

 
圖3 訪問SQL Azure中的數(shù)據(jù)

在上圖所示場景A中,使用應(yīng)用程序代碼存儲數(shù)據(jù)中心訪問權(quán)限,但是數(shù)據(jù)存在于SQL Azure中,應(yīng)用程序可是使用客戶端庫訪問SQL Azure。它的優(yōu)點(diǎn)是直接連接到SQL Azure中的數(shù)據(jù)庫,其缺點(diǎn)是每個客戶端必須使用已經(jīng)提供的數(shù)據(jù)訪問方法如ADO.Net來訪問SQL Azure中的數(shù)據(jù)庫。

在上圖所示的場景B中,應(yīng)用程序代碼在Windows Azure上,應(yīng)用數(shù)據(jù)庫在SQL Azure中的數(shù)據(jù)庫上,可以使用像場景A中的客戶端數(shù)據(jù)訪問類庫來訪問數(shù)據(jù)。場景B中允許了更多的客戶端類型來訪問,如桌面客戶端應(yīng)用和SilverLight應(yīng)用對數(shù)據(jù)的訪問。這種訪問方式的優(yōu)點(diǎn)有:業(yè)務(wù)邏輯離數(shù)據(jù)庫更近、暴露了一些標(biāo)準(zhǔn)接口,如HTTP、SOAP、客戶端程序不必依賴SQL Server 客戶端API。如果使用Windows Azure作為中間層訪問數(shù)據(jù),數(shù)據(jù)庫性能是其***缺點(diǎn)。

SQL Azure VS SQL Server

有關(guān)SQL Azure和SQL Server的詳細(xì)功能對比,這里就不再做出說明,感興趣的讀者可以參考微軟云計算中文博客,其地址是:http://blogs.msdn.com/b/azchina/archive/2010/05/25/sql-azure-vs-sql-server.aspx

或者參考其鏡像站點(diǎn)CSDN博客的關(guān)于SQL Azure和SQL Server的功能對比。地址:http://blog.csdn.net/azurechina/archive/2010/05/18/5604059.aspx

總結(jié)

本文介紹了SQL Server的云計算平臺版本——SQL Azure,但是我們又不能簡單的把SQL Azure看成是構(gòu)建在云端的SQL Server。SQL Azure是一個四層結(jié)構(gòu):基礎(chǔ)架構(gòu)層、平臺層、服務(wù)層和客戶端層,前三層構(gòu)成了微軟數(shù)據(jù)中心,客戶端層使用API或者基于Web的客戶端來訪問存儲在云中的數(shù)據(jù)。

【編輯推薦】

  1. 微軟云數(shù)據(jù)庫SQL Azure即將發(fā)布 或提供PHP支持
  2. SQL Azure方便開發(fā)者踏上云數(shù)據(jù)庫之路
  3. SQL Server 2008 R2十大新特性解析
  4. SQL Server分析服務(wù)性能優(yōu)化淺析
  5. SQL Azure新特性詳解 50GB空間六月推出

 

責(zé)任編輯:彭凡 來源: ITPUB
相關(guān)推薦

2010-11-16 09:12:42

SQL Azure

2012-01-05 09:45:31

微軟云數(shù)據(jù)庫SQL Azure

2010-11-11 10:46:20

微軟SQL Azure云端

2009-12-01 09:23:06

SQL Azure

2012-02-13 11:31:34

SQL Azure微軟云計算

2023-09-19 18:07:04

微軟Oracle

2010-03-18 14:23:28

SQL Azure

2011-05-19 10:53:17

SQL Azure

2010-09-16 09:44:56

2015-01-07 11:40:25

云數(shù)據(jù)庫DocumentDBAzure數(shù)據(jù)庫

2016-10-09 10:59:26

Azure SQL數(shù)據(jù)庫JSON

2016-09-07 14:08:01

AzureSQLJSON

2010-11-16 11:27:53

SQL Azure數(shù)據(jù)

2010-11-16 11:26:20

SQL Azure數(shù)據(jù)

2013-03-28 11:07:46

Windows AzuSQL AzureWindows Azu

2015-01-19 10:18:53

Azure SQL數(shù)據(jù)庫審計云安全

2011-05-24 10:18:09

2015-10-14 09:49:42

AWSAzure云數(shù)據(jù)庫

2011-06-24 15:57:35

SQL AzureDAC

2023-09-15 08:08:45

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號