共用方式為


雲端運算:SQL Azure 簡介

有了 SQL Azure,您可以實現熟悉的關聯式資料庫平台以及雲端運算兩種優點。

Joshua Hoffman

資料是企業的命脈。確保資料安全、可用而且容易存取,是任何一個 IT 部門的基本需求。更重要的還要確保資料得以妥善運用 (推動程序、明智決策以及聰明回應多變的環境),這才是區別企業成敗的指標。

企業確保資料可用性的方式不斷快速改變。從電子郵件和商務智慧等核心資料中心功能,到照片分享和檔案同步處理等個人應用程式,每一個項目的裝載服務 (以及把軟體當成服務的想法),都代表我們日常與資訊互動的生活片段。雲端運算在過去幾年迅速爆紅,它不僅是 IT 基礎結構的概念,也是 IT 基礎結構的實用元件。

其中最引人注目的當屬 Microsoft SQL Azure。SQL Azure 是一種儲存、管理和分析資料所用的基礎結構,不僅強大好用,還兼具雲端運算的優點。其共用、裝載的基礎結構,可以降低直接和間接成本。隨收隨付模式也可以達到更高的效率。除此之外,還內建容錯和高可用性 (HA) 等功能。

但是這種新模式在許多方面對於 IT 專業人員來說,仍然充滿挑戰。光是在使用裝載服務和內部基礎結構之間做出正確的抉擇,就是一大挑戰。您不僅要確保兩種方式順利整合,同時還要維持強大的安全性和業務持續性計劃。這些還只是 IT 專業人員在評估公司雲端運算解決方案時,必須考量的部分問題而已。

本文我將從 IT 專業人員的角度,為您介紹 SQL Azure。我將討論 SQL Azure 如何運作、最適合您環境的哪一部分、如何開始著手,以及如何確保它與您現有的資料基礎結構能夠順利整合。

什麼是 SQL Azure?

SQL Azure 是 Windows Azure 平台的一部分:一個提供裝載運算、基礎結構、Web 服務以及資料服務的服務套件。SQL Azure 元件具有完整的 SQL Server 關聯式資料庫功能,但也具有裝載於全球 Microsoft 資料中心的雲端運算服務功能。

凡是需要資料庫服務的地方,SQL Azure 通常都能派上用場。SQL Azure 尤其適用於下列幾種作業:

  • **共同作業:**SQL Azure 可將資料移到雲端,協助您建置一個合作中樞。當您需要在分公司之間共用跨組織界線資訊的存取權時,裝載的服務可以降低網路障礙,確保資料安全性。
  • **延展:**雲端運算的其中一項固有的優點,是因應需求擴增基礎結構,這項功能可讓您根據需要,動態延展應用程式的容量。尤其當裝載應用程式的尖峰用量隨時間出現急遽變化時 (例如,假日時段的零售應用程式),更是特別有用。
  • **匯總:**當關聯式資料庫功能的需求愈趨細微,並且分流到個別部門和工作群組時,「資料庫蔓延」的內部管理就變得很吃力。SQL Azure 可讓您匯整部門和工作群組資料庫、轉鑰佈建和簡化管理,讓系統管理員可以更輕鬆的達到部門需求。
  • **裝載的應用程式:**如果您已經在 Windows Azure 平台上裝載其他工作負載 (例如 Web 應用程式),那麼要在 SQL Azure 上整合裝載的關聯式資料庫工作負載就很容易了。它也可以藉由減少網路流量,增強應用程式的效能。
  • **成本效益:**根據您想安裝的工作負載而定,雲端運算提供的隨收隨付模式,也許是最符合成本效益的方法。

一般說來,SQL Azure 和傳統 SQL 的基本功能是可互相交替的,但是 Windows Azure 平台上的一些資枓庫大小限制則除外 (請在 SQL Azure 常見問題集 閱讀其他相關資訊)。每一種方法的基礎結構各有其優點和成本,因此只需個別針對企業需求,選擇最適合的方式即可。您也可以採用密切整合的方式,把工作負載分配給這兩個平台。

SQL Azure 入門

SQL Azure 的入門步驟相當簡單,如果您又很熟悉 SQL Server Management Studio 等傳統 SQL Server 管理工具 (您可以用它管理 SQL Azure 執行個體),那就更加容易了。

首先是為 Windows Azure 平台設定一個帳戶,讓您有權存取包括 Windows Azure、SQL Azure 和 Windows Azure AppFabric 在內的 Windows Azure 服務 (這也提供開發人員一個管道,讓他們連接跨越組織和網路界線的應用程式和服務)。帳戶建立之後,您就可以存取 SQL Azure 控制台了 (請參閱 [圖 1])。

Figure 1 A close look at the SQL Azure control panel

[圖 1] SQL Azure 控制台細部

SQL Azure 控制台可讓您在帳戶內建立新的資料庫。您可以將每一個資料庫定義為 Web Edition 或 Business Edition 資料庫。一個 Web Edition 資料庫最多可支援 5GB 的資料,而一個 Business Edition 資料庫最多可支援 50GB (Business Edition 是採用 10GB 的計費增量:10GB、20GB、30GB、40GB 和 50GB)。

控制台也會針對您的 SQL Azure 執行個體,提供您一個伺服器名稱,還有連接資料庫所用的 ADO.NET 或 ODBC 連接字串 (以 SQL 驗證為基礎;SQL Azure 不支援 Windows 驗證)。您可以在應用程式使用連接字串、建立一個 ODBC 物件,或在 SQL Server Management Studio 等管理工具輸入伺服器資訊 (請參閱 [圖 2])。

Figure 2 SQL Server Management Studio connected to a SQL Azure database

[圖 2] 連接到 SQL Azure 資料庫的 SQL Server Management Studio

您應該會注意到 SQL Azure 控制台內的 [防火牆設定] 視窗,它是另一道安全性措施,它可以讓您指定 IP 位址,從那裡存取您的資料庫。您可以輸入個別位址、位址範圍,或是其他 Microsoft 服務限額等任何組合 (這麼一來,您自己的 Windows Azure 執行個體和裝載應用程式,就有權存取您的資料庫了)。

在這裡與您儲存在 SQL Azure 的資料互動,就相當於使用您自己的 SQL Server。您可以使用 SQL Server Management Studio,執行所有的傳統 SQL Server 工作:建立資料表、檢視和預存程序;匯入資料;執行 T-SQL 陳述式等。

另外,雲端資料庫也應該提供一些雲端管理工具。做為 SQL Server Management Studio 輕量型替代方案的 SQL Azure Labs,為 SQL Azure 資料庫建立了一個 Web 管理工具,叫做Microsoft 專案代號「休斯頓」,好方便您在雲端快速開發、部署和管理資料庫。

以 Microsoft Silverlight 建立的「休斯頓專案」,為編寫和執行查詢、設計和編輯資料庫結構描述,以及編輯資料表資料等基本資料庫管理工作,提供一個跨平台的 Web 型資料庫管理工具。值得注意的是,「休斯頓專案」目前只提供社群技術預覽 (CTP),尚未獲得標準 Microsoft 支援服務部門的正式支援。

與 SQL Server 整合

整合 SQL Azure 與現有 SQL Server 基礎結構的方式有好幾種。大部分在整合與移轉跨伺服器資料時所採用的傳統方式,也都適用於 SQL Azure,包括 SQL Server Integration Services 在內,它可以讓您執行資料匯入/匯出、資料轉換和資料倉儲等功能。SQL Azure 也支援 SQL Server Management Studio 工具集所附隨的 SQL Server 匯入和匯出精靈,可供複製資料庫,以及與 SQL Azure 彼此移轉資料 (請參閱 [圖 3])。

Figure 3 Working with the SQL Server Import and Export Wizard

[圖 3] 使用 SQL Server 匯入和匯出精靈

要將 SQL Azure 整合到社群開發工具集的現有基礎結構中,還有另一個選項,稱為SQL Azure 移轉精靈。這個精靈會引導您選擇現有的 SQL Server 2005/2008 物件,並且建立對應的 SQL 指令碼,將那些物件移轉到 SQL Azure。雖然尚未獲得 Microsoft 正式支援,但是 SQL Azure 移轉精靈已經獲得包括廣大的社群支援,還包括影片可協助指引您使用這些工具。

最後一點,SQL Azure Data Sync (目前提供 CTP) 是一種雲端型同步處理服務,專門在內部部署的 SQL Server 和 SQL Azure 之間提供雙向資料同步處理,以及在不同位置的 SQL Azure 資料庫之間提供地理位置複寫功能。

SQL Azure Data Sync 是以 Microsoft Sync Framework 為基礎,因此它與多個位置彼此同步處理資料的方式非常類似。雖然如此,我們還是要再次提醒您,SQL Azure Data Sync 目前僅是 CTP,尚未獲得 Microsoft 支援服務部門的正式支援。

但是它也具有雲端運算的優點。雲端運算提供的成本效益、伺服器共同作業、隨選佈建以及地理多樣性還只是開端,待我們把資料移到雲端之後,好處就更多了。SQL Azure 不但結合了強大的效能和熟悉的 SQL Server 環境,同時也結合了雲端運算的優勢。對於任何希望建置一個更動態、更符合成本效益之資料管理基礎結構的公司來說,它都是一個相當理想的解決方案。

Joshua Hoffman

Joshua Hoffman是 TechNet Magazine 的前任主編。他現在是一名獨立的作者和顧問,為客戶提供技術與觀眾導向市場行銷的建議。Hoffman 同時也擔任 ResearchAccess.com 的主編,這個網站旨在培養和豐富市調社群。他現居美國紐約市。

相關內容