Azure 儲存簡介

悅光陰發表於2021-01-15

Azure Storage Account(儲存賬戶)包含所有Azure Storage的資料物件,包括Blob、Data Lake Gen2,File、Queue、Disk和Table等服務,該Storage Account為使用者的Azure Storage資料提供了唯一的名稱空間,可以通過HTTP或HTTPS來訪問它。Azure Storage Account中的資料是持久的、高度可用的、安全的和可擴充套件的。

一,儲存賬戶的型別

Azure Storage提供了4種型別的儲存賬戶,每種型別都支援不同的功能,並具有自己的定價模型。

  • General-purpose v2 accounts:基礎的儲存賬戶,用於Blob、Data Lake Gen2,File、Queue和Table等服務,最常用和最基礎的儲存賬戶。
  • BlockBlobStorage accounts:具有高階效能特徵的bock blob和 append blob。推薦用於高事務處理率、資料較小且低儲存延遲的場景種。
  • FileStorage accounts:純檔案的儲存賬戶
  • BlobStorage accounts:舊版的Blob-Only的儲存賬戶,推薦使用General-purpose v2 accounts。

儲存賬戶的作用是為使用者在Azure中提供唯一的名稱空間,儲存在Azure Storage中的任何物件都有唯一的地址,且都在唯一賬戶名下。賬戶名和Azure Storage Blog endpoint的組合構成了儲存賬戶中物件的基地址。

舉個例子,如果儲存賬戶的名稱是:mystorageaccount,預設的Blog storage的endpoint是:

http://mystorageaccount.blob.core.windows.net

1,儲存賬戶的端點

儲存賬戶為Azure中的資料提供了唯一的名稱空間,使得儲存在Azure Storage中的每個物件都有一個唯一的地址,該地址包含在儲存賬戶名,也就是說,儲存賬戶和Azure 儲存服務的端點的組合構成在儲存賬戶中物件的基地址:

2, Access tier(訪問層)

Azure Storage根據使用模式的不同,提供了用於訪問block blob資料的不同選項。Azure Storage中的訪問層(Access Tier)都針對特定的資料使用模式進行了優化,通過選擇合適的訪問層,可以以最具成本效益的方式儲存Block Blob資料。

可用的訪問層:

  • Hot:用於頻繁訪問儲存賬戶中的物件,在hot tier中,訪問資料最具有成本效益,而儲存資料的成本則較高。預設情況下,在hot tier中建立新的儲存賬戶。
  • Cool:用於儲存不經常訪問,且儲存時間超過30天的大量資料。在Cool tier中儲存資料更具成本效益,而訪問資料的成本則較高。
  • Archive:僅用於單個Block Blob,歸檔層可以忍受數小時的檢索延遲,並且資料在歸檔層中至少保留180天。歸檔層最適合儲存長時間訪問的資料,但是訪問資料是最慢的。

目前,只有 General-purpose V2 和 BlobStorage支援訪問層。

二,Blob儲存

Blob(Binary Large Object,二進位制型別的大物件)儲存是Microsoft的雲物件儲存解決方案,Blob儲存經過優化,可儲存大量非結構化資料。 非結構化資料是不遵循特定資料模型或定義的資料,例如文字或二進位制資料。

Blob儲存用於:

  • 把影像或文件直接提供給瀏覽器
  • 儲存檔案以進行分散式訪問
  • 流式傳輸視訊和音訊
  • 寫入日誌檔案
  • 儲存資料以進行備份和歡迎
  • 儲存資料以on-premises方式進行分析,或Azure 託管服務。

1,Blob儲存的資源

Blob儲存提供三種資源:

  • 儲存賬戶
  • 儲存賬戶中的Container(容器)
  • 容器中的Blob

 

2,容器(Container)

一個容器組織了一組Blob,類似於檔案系統中的目錄(Directory),一個Storage Account可以包含無限數量的容器,一個容器可以儲存無線數量的Blob。

3,Blob

Azure Storage支援三種的Blob:

  • Block blobs :用於儲存文字和二進位制資料,塊Blob由可以單獨管理的資料塊構成。
  • Append Blob:對追加操作進行優化的的Blob,特別適合用於記錄日誌。
  • Page blobs:儲存隨機訪問的檔案,Page Blob儲存虛擬硬碟(Virtual Hard Drive,VHD)檔案,並用作Azure VM的硬碟。

三,Azure Data Lake Storage Gen2儲存

Azure Data Lake Storage Gen2(簡稱二代Data Lake)是基於Azure Blob Storage構建的,具有Blob儲存的優點,例如,低成本的分層儲存(tiered storage),高可用性,強一致性和災難恢復能力等。它也提供了有層次結構的檔案系統(hierarchical file system)。二代Data Lake的核心功能是資料儲存和資料查詢兩個部分,它已經整合於儲存賬號(Storage Account)的功能體系之中。

Azure Data Lake Storage Gen2:有層次結構的檔案系統

“層次結構”和“檔案系統”是反覆被強調的Data Lake Storage Gen2的最大特點,也是它有別於傳統Blob物件儲存的最大不同。傳統物件儲存雖然從路徑上看起來也具有“目錄”的虛擬概念,但其實目錄通常並不實際存在,可認為僅是Blob物件路徑字串中的一部分,因為物件儲存本質上是key-value形式的儲存。而ADLS這樣的“檔案系統”級別的儲存能力上,目錄則是一等公民,可以設定訪問許可權等後設資料(並且能夠被子節點繼承),也可以使目錄重新命名等操作變得十分便捷迅速。這樣的特性無疑使ADLS更適合作為企業資料湖這樣應用的儲存介質。

Data Lake Storage Gen2可以向Blob儲存中新增諷刺的名稱空間(hierarchical namespace),分層名稱空間把物件/檔案組織到目錄的分層結構中,以實現高效的資料訪問,並使得檔案的管理更加容易,通過目錄和子目錄來組織和操作檔案。

在通常情況下,物件儲存的命名約定是使用名稱中的斜槓來模仿分層目錄結構,比如C:/dir/file.txt,這種結構在Data Lake Storage Gen2中變為現實。重新命名或刪除目錄之類的操作將成為目錄上的單個原子後設資料操作。無需列舉和處理共享目錄名稱字首的所有物件。

在Data Lake Storage Gen2服務中,建立一個容器victest,在容器中建立Folder,或者在容器中儲存file:

四,一個服務,多個概念

由於Data Lake Storage Gen2建立在Azure Blob儲存之上,因此多個概念可以描述相同的共享事物。

以下是等效實體,卻使用不同的概念來描述, 除非另有說明,否則這些實體直接是同義詞:

 

 

參考文件:

相關文章