在Azure平臺中,資料以XML格式儲存,必須使用REST型態的API透過HTTP協定來存取,不再支援SQL指令或資料表Schema。資料提供:微軟

如何在網路上處理數千GB甚至TB、PB等級的海量資料,這是雲端運算最大的難題之一。微軟為了讓應用程式可以處理這樣等級的資料量,並且還可以任意擴充資料量,在Azure平臺中,微軟放棄了傳統的關連式資料庫架構,改用全新架構。

Azure平臺不再使用關連式的資料庫架構,所以,開發人員無法使用熟悉的SQL語法,也不需要規畫資料庫欄位的架構Schema。換句話說,使用SQL語法的程式,全部無法使用,必須重新改寫,才能存取Azure上的資料。對開發人員和資料庫管理者而言,這是Azure平臺最大的變革。

目前微軟發表的Azure CTP版本,提供了兩大類儲存空間。第一類是Azure作業系統內部的儲存機制,稱為Azure Storage(Azure儲存機制),另外一類則是Azure服務平臺上的SQL Services。這是兩種不同的儲存機制,存取方式也略有不同。

Azure Storage是Azure應用程式內部執行環境的儲存機制。Azure會將實體伺服器的所有儲存資源,集中建立1個資料的共享池(Sharing pool),讓Azure應用程式存取。

在Azure Storage中,所有資料都有一個特定的網址,應用程式可以透過HTTP協定的API呼叫來存取。Azure打破了傳統資料表的結構,改用XML格式來保存資料。使用XML最大好處是可以處理非結構化的資料型態。

過去關連式資料表上的欄位名稱,在Azure Storage中等同於1個XML標籤。應用程式只要在API的查詢條件上指定那個XML標籤,就能存取到對應的內容。

目前Azure Storage提供了3種資料格式,包括類似表格結構的Tables、可儲存最多50GB大小的Blobs格式,以及僅供應用程式內部溝通使用的Queues格式。

另外一類Azure應用程式可使用的儲存空間SQL Services, 正是原來的微軟線上儲存服務SQL Server Data Service(SSDS),這是用SQL Server資料庫技術打造的高擴充性儲存服務。

SQL Services採用了新的ACE資料模式,每1筆資料記錄會儲存在1個包含Authority、Container和Entity三層名稱的網址下。Authority記錄了地理區域和計價單位的資訊,而Container則是相同資料格式類型,例如圖片資料都會儲存Image的Container中。Entity則是最基本資料儲存單位,用XML格式保存資料。

不論是Azure Storage或SQL Services的資料存取API,都是遵循REST這種新的Web Service格式,這也是許多網路開發者熟悉的API使用方式。不過,存取方法雖相同,但是,SQL Services允許網路上任何應用程式來存取,而Azure Storage只開放給Azure平臺中的應用程式使用。

目前,SQL Services只提供了資料儲存和資料同步的功能,微軟表示,為了提供相容性,3月底的MIX09會議中,也會推出SQL Services的SQL Server 2008服務,等於是讓企業可以使用微軟機房中的SQL Server 2008,不過這個服務就無法提供高擴充性,但是,可以像過去那樣使用關連式資料庫的存取指令。此外,今年內還會陸續增加分析報表或資料探勘元件的功能。

 

【相關報導請參考「撥開微軟Azure雲端運算的迷霧」】

熱門新聞

Advertisement