Azure 儲存體簡介
Azure 儲存體平台是 Microsoft 針對最新資料儲存體環境推出的雲端儲存體解決方案。 Azure 儲存體針對雲端中的各種資料物件,提供高可用性、可大規模調整、持久且安全的儲存體。 您可透過 REST API,並利用 HTTP 或 HTTPS 從世界各地存取 Azure 儲存體的資料物件。 Azure 儲存體也提供用戶端程式庫,供開發人員透過 .NET、JAVA、Python、JavaScript、C++ 和 Go 來建立應用程式或服務。 開發人員和 IT 專業人員可以使用 Azure PowerShell 和 Azure CLI 來撰寫資料管理或設定工作的指令碼。 Azure 入口網站和 Azure 儲存體總管會提供與 Azure 儲存體互動的使用者介面工具。
Azure 儲存體的優點
Azure 儲存體為應用程式開發人員和 IT 專業人員提供下列優點:
- 持久與高可用性。 備援功能可在發生暫時性硬體失敗時,確保您的資料安全無虞。 您也可以選擇在資料中心或地理區域間複寫資料,以便在發生地方性災難或天然災害時獲得額外保護。 以此方式複寫資料,可在發生未預期的中斷事件時保持高可用性。
- 安全。 所有寫入 Azure 帳戶儲存體的資料皆會由服務進行加密。 Azure 儲存體在存取您資料的人員控管上,提供更細微的控制。
- 可擴充。 Azure 儲存體設計為可大幅調整,以符合現今應用程式的資料儲存和效能需求。
- 受管理。 Azure 會為您處理硬體維護、更新和重大問題。
- 可存取。 您可以從世界各地透過 HTTP 或 HTTPS 存取 Azure 儲存體中的資料。 Microsoft 提供多種語言的 Azure 儲存體用戶端程式庫 (包含 .NET、Java、Node.js、Python、PHP、Ruby、Go 等) 和成熟的 REST API。 Azure 儲存體支援在 Azure PowerShell 或 Azure CLI 中使用指令碼。 而且在使用資料方面,Azure 入口網站和 Azure 儲存體總管提供簡易的視覺式解決方案。
Azure 儲存體資料服務
Azure 儲存體平台包含下列資料服務:
- Azure Blob:適用於文字和二進位資料且可大幅調整的物件存放區。 也包含透過 Data Lake Storage Gen2 支援的大型資料分析。
- Azure 檔案服務:雲端或內部部署的受控檔案共用。
- Azure Elastic SAN (預覽) :可簡化在 Azure 中部署、調整、管理和設定 SAN 的完整整合式解決方案。
- Azure 佇列:可在應用程式元件之間可靠傳訊的訊息存放區。
- Azure 資料表:以無結構描述方式儲存結構化資料的 NoSQL 存放區。
- Azure 受控磁片:適用于 Azure VM 的區塊層級儲存體磁片區。
每個服務都是透過具有唯一位址的儲存體帳戶來存取。 若要開始使用,請參閱建立儲存體帳戶。
此外,Azure 還提供下列特製化儲存體:
- Azure NetApp Files:由 NetApp 提供的企業檔案儲存體:讓企業企業營運 (LOB) 和儲存體專業人員輕鬆地移轉和執行複雜的檔案型應用程式,而不需要變更程式碼。 Azure NetApp Files是透過 NetApp 帳戶管理,並可透過 NFS、SMB 和雙重通訊協定磁片區存取。 若要開始使用,請參閱 建立 NetApp 帳戶。
如需決定要用於案例之資料服務的協助,請參閱在 Microsoft 雲端採用架構中檢閱您的儲存體選項。
檢查在 Azure 中儲存資料的選項
Azure 提供各種不同的儲存體工具和服務,包括 Azure 儲存體。 若要判斷哪一項 Azure 技術最適合您的案例,請參閱 Azure 雲端採用架構中的檢查儲存體選項。
Azure 儲存體服務的範例案例
下表比較檔案、Blob、磁片、佇列、資料表和Azure NetApp Files,並顯示每個案例的範例案例。
功能 | 描述 | 使用時機 |
---|---|---|
Azure 檔案 | 提供完全受控的雲端檔案共用,您可以透過業界標準伺服器訊息區 (SMB) 通訊協定、網路檔案系統 (NFS) 通訊協定,以及Azure 檔案儲存體 REST API從任何地方存取。 您可以從 Windows、Linux 和 macOS 的雲端或內部部署上掛接 Azure 檔案共用。 |
您想要將應用程式「隨即轉移」至已使用原生檔案系統 API 的雲端,以在該應用程式與其他執行於 Azure 中的應用程式之間共用資料。 您想要取代或補充內部部署檔案伺服器或 NAS 裝置。 您想要儲存需要從許多虛擬機器存取的開發和偵錯工具。 |
Azure Blob | 允許在區塊 Blob 中大規模地儲存和存取非結構化資料。 也支援將 Azure Data Lake Storage Gen2 用於企業巨量資料分析解決方案。 |
您想要應用程式支援串流及隨機存取案例。 您想要能夠從任何位置存取應用程式資料。 您想要在 Azure 上建置企業 Data Lake,並執行巨量資料分析。 |
Azure Elastic SAN (預覽) | Azure Elastic SAN (預覽) 是一個完全整合的解決方案,可簡化部署、調整、管理和設定 SAN,同時提供高可用性等內建雲端功能。 | 您想要透過網際網路 Small Computer Systems Interface (iSCSI) 通訊協定存取的大規模儲存體, (例如 SQL、MariaDB、Azure 虛擬機器和 Azure Kubernetes Services) 存取的多種計算資源類型。 |
Azure 磁碟 | 允許從連接的虛擬硬碟持續儲存和存取資料。 | 您想要隨即轉移使用原生檔案系統 API 讀取及寫入資料至永續性磁碟的應用程式。 您想要儲存不需要從連結磁碟的虛擬機器之外存取的資料。 |
Azure 佇列 | 允許應用程式元件之間的非同步訊息佇列。 | 您想要分離應用程式元件,並使用非同步訊息在兩者之間進行通訊。 如需何時使用佇列儲存體與服務匯流排佇列的指引,請參閱 儲存體佇列和服務匯流排佇列 - 比較和對比。 |
Azure 資料表 | 可讓您將結構化 NoSQL 資料儲存在雲端,並提供無架構設計的索引鍵/屬性存放區。 | 您希望儲存具彈性的資料集,例如 Web 應用程式的使用者資料、通訊錄、裝置資訊,以及服務所需的其他中繼資料類型。 如需何時使用資料表儲存體與 Azure Cosmos DB for Table 的指引,請參閱 使用適用于資料表和 Azure 資料表儲存體的 Azure Cosmos DB 進行開發。 |
Azure NetApp Files | 提供完全受控、高可用性的企業級 NAS 服務,可處理需要進階資料管理功能的最需求、高效能、低延遲工作負載。 | 您有難以移轉的工作負載,例如 POSIX 相容的 Linux 和 Windows 應用程式、SAP HANA、資料庫、高效能計算 (HPC) 基礎結構和應用程式和企業 Web 應用程式。 您需要支援單一服務中的多個檔案儲存體通訊協定,包括 NFSv3、NFSv4.1 和 SMB3.1.x,可啟用各種不同的應用程式隨即轉移案例,而不需要變更程式碼。 |
Blob 儲存體
Azure Blob 儲存體是 Microsoft 針對雲端推出的物件儲存體解決方案。 Blob 儲存體已針對儲存大量非結構化資料進行優化,例如文字或二進位資料。
Blob 儲存體適合用於:
- 直接提供映像或文件給瀏覽器。
- 儲存檔案供分散式存取。
- 串流影片和音訊。
- 儲存備份和還原、災害復原和封存資料。
- 儲存資料供內部部署或 Azure 裝載服務進行分析。
Blob 儲存體中的物件可以透過 HTTP 或 HTTPS 從世界各地存取。 使用者或用戶端應用程式可以透過 URL、Azure 儲存體 REST API、Azure PowerShell、Azure CLI 或 Azure 儲存體用戶端程式庫存取 Blob。 儲存體用戶端程式庫提供多種語言,包括 .NET、Java、Node.js、Python、PHP 和 Ruby。
用戶端也可以使用 SSH 檔案傳輸通訊協定 (SFTP) 安全地連線到 Blob 儲存體,並使用網路檔案系統 (NFS) 3.0 通訊協定掛接 Blob 儲存體容器。
如需 Blob 儲存體的詳細資訊,請參閱 Blob 儲存體簡介。
Azure 檔案
Azure 檔案儲存體可讓您設定高可用性的網路檔案共用,這些共用可使用業界標準伺服器訊息區 (SMB) 通訊協定、網路檔案系統 (NFS) 通訊協定,以及Azure 檔案儲存體 REST API 來存取。 這表示多個 VM 可以透過讀取和寫入權限共用相同的檔案。 您也可以使用 REST 介面或儲存體用戶端程式庫來讀取檔案。
區分 Azure 檔案服務與公司檔案共用上的檔案的方法之一,就是您可以使用指向檔案並包含共用存取簽章 (SAS) 權杖的 URL,從世界各地存取檔案。 您可以產生 SAS 權杖;SAS 權杖可允許特定一段時間內私人資產的特定存取。
檔案共用可以用於許多常見案例:
許多內部部署應用程式會使用檔案共用。 這項功能可讓您更輕鬆地將共用資料的應用程式移轉至 Azure。 如果您將檔案共用掛接至內部部署應用程式使用的相同磁碟機代號,則存取檔案共用的應用程式部分應會在變動最小 (如果有的話) 的情況下運作。
組態檔可以儲存在檔案共用上並從多個 VM 進行存取。 由群組中多個開發人員所用的工具和公用程式可以儲存於檔案共用,確保所有人都可以找到它們並使用相同的版本。
可以寫入檔案共用且稍後進行處理或分析的資料範例有三個:資源記錄、計量和損毀傾印。
如需 Azure 檔案服務的詳細資訊,請參閱 Azure 檔案服務簡介。
某些 SMB 功能不適用於雲端。 如需詳細資訊,請參閱 Azure 檔案服務不支援的功能。
Azure Elastic SAN (預覽)
Azure 彈性儲存體區域網路 (SAN) 可解決 Microsoft 對於工作負載最佳化和大規模資料庫與效能密集任務關鍵性應用程式之間的整合問題。 彈性 SAN (預覽) 是完全整合的解決方案,可簡化部署、調整、管理和設定 SAN,同時提供高可用性等內建雲端功能。
彈性 SAN 是針對大規模 IO 密集工作負載和最上層資料庫 (例如 SQL、MariaDB) 所設計,並支援在虛擬機器或 Azure Kubernetes Service之類的容器上裝載工作負載。 彈性 SAN 磁片區可透過 iSCSI 通訊協定與各種計算資源相容。 彈性 SAN 的一些其他優點包括簡化的部署和管理介面。 因為您可以從單一介面管理多個計算資源的儲存體,以及成本優化。
如需 Azure Elastic SAN 的詳細資訊,請參閱 什麼是 Azure Elastic SAN? (預覽) 。
佇列儲存體
Azure 佇列服務用來儲存及擷取訊息。 佇列訊息的大小上限為 64 KB,而一個佇列可以包含數百萬則訊息。 佇列通常用來儲存要以非同步方式處理的訊息清單。
例如,假設您希望客戶能夠上傳圖片,而且要建立每張圖片的縮圖。 您可以讓客戶在上傳圖片時等候您建立縮圖。 另外,也可以使用佇列。 當客戶完成上傳時,將訊息寫入佇列。 然後讓 Azure Function 從佇列擷取訊息並建立縮圖。 這項處理的每個部分都可以個別調整,讓您在針對您的使用量進行微調時有更多控制權。
如需 Azure 佇列的詳細資訊,請參閱佇列簡介。
表格儲存體
Azure 資料表儲存體現在是 Azure Cosmos DB 的一部分。 若要查看 Azure 資料表儲存體檔,請參閱 Azure 資料表儲存體概觀。 除了現有的 Azure 資料表儲存體服務之外,還有新的 Azure Cosmos DB for Table 供應專案,可提供輸送量優化的資料表、全域散發和自動次要索引。 若要深入瞭解並試用新的進階體驗,請參閱 Azure Cosmos DB for Table。
如需資料表儲存體的詳細資訊,請參閱 Azure 資料表儲存體概觀。
磁碟儲存體
Azure 受控磁碟是虛擬硬碟 (VHD)。 您可以將它視為內部部署伺服器中虛擬化的實體磁碟。 Azure 受控磁碟會儲存為分頁 Blob,它是 Azure 中的隨機 IO 儲存物件。 我們稱之為受控磁片,因為它是分頁 Blob、Blob 容器和 Azure 儲存體帳戶的抽象概念。 使用受控磁碟,您所要做的就是佈建磁碟,Azure 會負責執行剩餘的部分。
如需受控磁碟的詳細資訊,請參閱 Azure 受控磁碟簡介。
Azure NetApp Files
Azure NetApp Files 服務是企業等級、高效能、計量檔案儲存體服務。 Azure NetApp Files 支援任何工作負載類型,預設為高度可用。 您可以選取服務和效能等級、建立 NetApp 帳戶、容量集區、磁片區,以及管理資料保護。
如需Azure NetApp Files的詳細資訊,請參閱Azure NetApp Files簡介。
如需Azure 檔案儲存體和Azure NetApp Files的比較,請參閱Azure 檔案儲存體和Azure NetApp Files比較。
儲存體帳戶類型
Azure 儲存體提供數種儲存體帳戶。 每個類型都支援不同的功能,而且都有自己的計價模式。 如需有關儲存體帳戶類型的詳細資訊,請參閱 Azure 儲存體帳戶概觀。
保護對儲存體帳戶的存取
每個對 Azure 儲存體的要求都必須獲得授權。 Azure 儲存體支援下列授權方法:
- Blob、佇列和表格資料的 Azure Active Directory (Azure AD) 整合。 Azure 儲存體透過 Azure 角色型存取控制 (Azure RBAC),支援對 Blob 和佇列服務的 Azure AD 進行驗證和授權。 預覽中的表格服務也支援使用 Azure AD 授權。 建議使用 Azure AD 授權,以提供更佳的安全性和易用性。 如需詳細資訊,請參閱授權存取 Azure 儲存體中的資料。
- Azure AD 透過 SMB 進行 Azure 檔案儲存體的授權。 Azure 檔案儲存體透過 Azure Active Directory 網域服務 (Azure AD DS) 或內部部署 Active Directory Domain Services (預覽),支援透過 SMB (Server Message Block) 進行以身分識別為基礎的授權。 您加入網域的 Windows VM 可以使用 Azure AD 認證存取 Azure 檔案共用。 如需詳細資訊,請參閱 AZURE 檔案儲存體 SMB 存取的身分識別型驗證支援總覽和規劃 Azure 檔案儲存體部署。
- 使用共用金鑰進行授權。 Azure 儲存體 Blob、檔案、佇列和表格服務都支援具有共用金鑰的授權。 使用共用金鑰授權的用戶端會在每個要求中,傳遞使用儲存體帳戶存取金鑰所簽署的標頭。 如需詳細資訊,請參閱使用共用金鑰進行授權。
- 使用共用存取簽章 (SAS) 進行驗證。 共用存取簽章 (SAS) 是包含安全性權杖的字串,可附加至儲存體資源的 URI。 安全性權杖會封裝條件約束,例如權限和存取間隔。 如需詳細資訊,請參閱使用共用存取簽章 (SAS)。
- Active Directory 網域服務與 Azure NetApp Files。 Azure NetApp Files 功能,例如 SMB 磁碟區、雙重通訊協定磁碟區和 NFSv4.1 Kerberos 磁碟區的設計目的是與 AD DS 搭配使用。 如需詳細資訊,請參閱瞭解Active Directory 網域服務網站設計和規劃Azure NetApp Files的指導方針,或瞭解如何為 Azure NetApp Files 設定 ADDS LDAP over TLS。
加密
有兩個基本加密類型可用於 Azure 儲存體。 如需安全性和加密的詳細資訊,請參閱 Azure 儲存體安全性指南。
待用加密
Azure 儲存體加密可保護並確保資料,且符合組織安全性和合規性承諾。 Azure 儲存體會在保存到儲存體帳戶之前自動加密所有資料,並在擷取之前將其解密。 加密、解密和金鑰管理程序皆對使用者透明。 客戶也可以選擇使用 Azure Key Vault 管理自己的金鑰。 如需詳細資訊,請參閱待用資料的 Azure 儲存體加密。
所有 Azure NetApp Files 磁碟區都是使用 FIPS 140-2 標準來加密。 如需Azure NetApp Files,請參閱安全性常見問題。
用戶端加密
Azure 儲存體的用戶端程式庫會提供方法,以在透過網路傳送和解密回應之前,先從用戶端程式庫加密資料。 透過用戶端加密來加密的資料也會由 Azure 儲存體待用加密。 如需用戶端加密的詳細資訊,請參閱 Azure 儲存體的用戶端 .NET 加密。
Azure NetApp Files資料流量原本就受到設計保護,因為它不會提供公用端點,而且資料流量會保留在客戶擁有的 VNet 內。 根據預設,資料進行中不會加密。 不過,從 Azure VM (執行 NFS 或 SMB 用戶端) 到 Azure NetApp Files 的資料流量,就像任何其他 Azure VM 至 VM 流量一樣安全。 您可以選擇性地啟用 NFSv4.1 和 SMB3 資料內加密。 如需Azure NetApp Files,請參閱安全性常見問題。
備援性
為了確保資料的持久性,Azure 儲存體會為您儲存多個資料複本。 當您設定儲存體帳戶時,您可選取備援選項。 如需詳細資訊,請參閱 Azure 儲存體備援 \(部分機器翻譯\)。
Azure NetApp Files提供99.99% 可用性的本地備援儲存體。
將資料移入或移出 Azure 儲存體
您可以透過數個選項將資料移入或移出 Azure 儲存體。 應選擇哪個選項,取決於您的資料集大小和網路頻寬。 如需詳細資訊,請參閱選擇適合資料轉送的 Azure 解決方案。
Azure NetApp Files 提供 NFS 和 SMB 磁碟區。 您可以使用任何檔案型複製工具,將資料移轉至服務。 如需詳細資訊,請參閱資料移轉和保護Azure NetApp Files常見問題。
定價
決定如何儲存及存取資料時,您也應考慮牽涉的成本。 如需詳細資訊,請參閱 Azure 儲存體定價。
Azure NetApp Files雲端檔案儲存體服務會根據布建的容量集區容量每小時收費。 如需詳細資訊,請參閱Azure NetApp Files儲存體定價。
儲存體 API、程式庫和工具
您可以使用任何可發出 HTTP/HTTPS 要求的語言來存取儲存體帳戶中的資源。 另外,Azure 儲存體還提供了幾種熱門語言的程式設計程式庫。 這些程式庫可透過處理詳細資料 (例如同步和非同步叫用、進行批次作業、例外狀況管理、自動重試、運作方式等等) 來簡化使用 Azure 儲存體的許多項目。 程式庫目前適用於下列語言和平台,以及正在研發的其他語言和平台:
Azure 儲存體資料 API 和程式庫參考
- Azure 儲存體 REST API
- 適用於 .NET 的 Azure 儲存體用戶端程式庫
- 適用於 Java/Android 的 Azure 儲存體用戶端程式庫
- 適用於 Node.js 的 Azure 儲存體用戶端程式庫
- 適用於 Python 的 Azure 儲存體用戶端程式庫
- 適用於 PHP 的 Azure 儲存體用戶端程式庫
- 適用於 Ruby 的 Azure 儲存體用戶端程式庫
- 適用於 C++ 的 Azure 儲存體用戶端程式庫
Azure 儲存體管理 API 和程式庫參考
Azure 儲存體資料移動 API
工具和公用程式
- 儲存體的 Azure PowerShell Cmdlet
- 儲存體的 Azure CLI Cmdlet
- AzCopy 命令列公用程式
- Azure 儲存體總管 是一個免費的獨立應用程式,可讓您在 Windows、MacOS 和 Linux 上以視覺化方式處理 Azure 儲存體資料。
- 適用於 Azure 儲存體的 Azure Resource Manager 範本
下一步
若要讓 Azure 儲存體啟動並執行,請參閱建立儲存體帳戶。