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

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

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

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

SQL Azure的架構

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

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

 

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

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

 
圖2 SQL Azure架構

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

基礎設施層

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

平臺層

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

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

管理服務能夠對運行在其上的服務進行健康檢查、升級或者打補丁。并為SQL Server Fabric提供軟硬件支持。

服務層

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

客戶端層

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

SQL Azure的主要功能

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

數(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ù),返回當前安全登錄名

(12)MARS,多活動結果集

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

(1)分布式查詢

(2)分布式Transactions

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

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

應用程序功能

應用程序功能不支持的功能有:

(1)Service Broker

(2)HTTP access

(3)CLR stored procedures

管理功能

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

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

(2)索引開啟

(3)查詢開啟

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

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

(2)SQL profiler

(3)SQL trace flag

(4)命令行備份

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

有關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ù)服務客戶端、SilverLight等方式,使用HTTP或HTTPS來訪問云中的數(shù)據(jù)。如圖3所示:

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

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

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

SQL Azure VS SQL Server

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

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

總結

本文介紹了SQL Server的云計算平臺版本——SQL Azure,但是我們又不能簡單的把SQL Azure看成是構建在云端的SQL Server。SQL Azure是一個四層結構:基礎架構層、平臺層、服務層和客戶端層,前三層構成了微軟數(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分析服務性能優(yōu)化淺析
  5. SQL Azure新特性詳解 50GB空間六月推出

 

責任編輯:彭凡 來源: ITPUB
相關推薦

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

點贊
收藏

51CTO技術棧公眾號