共用方式為


在 Azure 中選擇巨量數據記憶體技術

注意

Azure Data Lake Storage Gen1 將於 2024 年 2 月 29 日淘汰。 如需詳細資訊,請參閱官方公告。 如果您使用 Azure Data Lake Storage Gen1,請務必在該日期之前遷移至 Azure Data Lake Storage Gen2。 若要了解如何進行,請參閱使用 Azure 入口網站將 Azure Data Lake Storage 從 Gen1 移轉至 Gen2

除非您已經有 Azure Data Lake 儲存體 Gen1 帳戶,否則您無法建立新的帳戶。

本主題比較巨量數據解決方案的數據記憶體選項,特別是大量數據擷取和批處理的數據記憶體,而不是 分析數據存放區 或即時串流擷取。

在 Azure 中選擇資料記憶體時,有哪些選項?

視您的需求而定,有數個選項可用來將數據內嵌至 Azure。

檔案記憶體:

NoSQL 資料庫:

分析資料庫:

Azure 資料總管

Azure 儲存體 Blob

Azure 儲存體 是受控記憶體服務,具有高可用性、安全、持久性、可調整性和備援性。 Microsoft 會負責維護,併為您處理重大問題。 Azure 儲存體 是 Azure 提供的最普遍記憶體解決方案,因為可以使用的服務與工具數目。

您可以使用各種 Azure 儲存體 服務來儲存數據。 從許多數據源儲存 Blob 的最彈性選項是 Blob 記憶體。 Blob 基本上是檔案。 他們會儲存圖片、檔、HTML 檔案、虛擬硬碟(VHD)、巨量數據,例如記錄、資料庫備份,幾乎任何東西。 Blob 會儲存在類似於資料夾的容器中。 容器會提供一組 Blob 的群組。 記憶體帳戶可以包含不限數量的容器,而容器可以儲存無限制數目的 Blob。

Azure 儲存體 是巨量數據和分析解決方案的絕佳選擇,因為其彈性、高可用性和低成本。 它針對不同的使用案例,提供經常性存取、非經常性存取和封存儲存層。 如需詳細資訊,請參閱 Azure Blob 儲存體:經常性存取、非經常性存取和封存儲存層

您可以從Hadoop存取 Azure Blob 記憶體(可透過 HDInsight 取得)。 HDInsight 可以使用 Azure 儲存體中的 Blob 容器做為叢集的預設檔案系統。 透過 WASB 驅動程式提供的 Hadoop 分散式文件系統 (HDFS) 介面,HDInsight 中的完整元件集可以直接在儲存為 Blob 的結構化或非結構化數據上運作。 您也可以使用 Azure Synapse Analytics 的 PolyBase 功能來存取 Azure Blob 記憶體。

其他讓 Azure 儲存體 不錯的選擇功能如下:

Azure Data Lake Storage Gen1

Azure Data Lake 儲存體 Gen1 是適用於巨量數據分析工作負載的全企業超大規模資料庫存放庫。 Data Lake 可讓您在單 一安全 位置擷取任何大小、類型和擷取速度的數據,以進行操作和探勘分析。

Azure Data Lake 儲存體 Gen1 不會對帳戶大小、檔案大小或可儲存在 Data Lake 中的數據量施加任何限制。 數據會藉由建立多個復本來永久儲存,而且數據可以儲存在 Data Lake 中的持續時間沒有限制。 除了製作多個檔案復本來防範任何非預期的失敗之外,Data Lake 也會將檔案的一部分分散到一些個別的記憶體伺服器上。 這可改善以平行方式讀取檔案以便執行資料分析時的輸送量。

您可以使用與 WebHDFS 相容的 REST API,從 Hadoop 存取 Azure Data Lake 儲存體 Gen1(可透過 HDInsight 取得)。 當您的個人或合併的檔案大小超過 Azure 儲存體 所支援的檔案大小時,您可以考慮將此作為 Azure 儲存體 的替代方案。 不過,使用 Azure Data Lake 儲存體 Gen1 作為 HDInsight 叢集的主要記憶體時,您應該遵循效能微調指導方針,並提供 SparkHiveMapReduce 的特定指導方針。 此外,請務必檢查 Azure Data Lake 儲存體 Gen1 的區域可用性,因為它無法在與 HDInsight 叢集相同的區域中使用,因為其不適用於與 Azure 儲存體 相同的區域。

搭配 Azure Data Lake Analytics,Azure Data Lake 儲存體 Gen1 的設計目的是要對儲存的數據啟用分析,並針對數據分析案例的效能進行調整。 Azure Data Lake 儲存體 Gen1 也可以使用其 PolyBase 功能,透過 Azure Synapse 存取。

Azure Cosmos DB

Azure Cosmos DB 是 Microsoft 全球散發的多模型資料庫。 Azure Cosmos DB 保證全球第 99 個百分位數的單一位數毫秒延遲、提供多個定義完善的一致性模型來微調效能,並保證具有多路連接功能的高可用性。

Azure Cosmos DB 與架構無關。 它會自動編製所有數據的索引,而不需要您處理架構和索引管理。 它也是多模型,原生支援檔、索引鍵/值、圖形和數據行系列數據模型。

Azure Cosmos DB 功能:

HDInsight 上的 HBase

Apache HBase 是一個開放原始碼的 NoSQL 資料庫,建置在 Hadoop 上,並在 Google BigTable 之後建立模型。 HBase 針對由數據行系列組織之無架構資料庫中的大量非結構化和半結構化數據,提供隨機存取和強式一致性。

數據會儲存在數據表的數據列中,而數據列中的數據會依數據行系列分組。 HBase 在概念上是無架構的,因為數據行和儲存在數據行中的數據類型都不需要定義,才能使用它們。 開放原始碼程式碼會以線性方式調整,以處理數千個節點上數 PB 的資料。 它可以依賴Hadoop生態系統中分散式應用程式所提供的數據備援、批處理和其他功能。

HDInsight 實作會利用 HBase 的向外延展架構,提供數據表的自動分區化、讀取和寫入的強式一致性,以及自動故障轉移。 記憶體內快取可增強寫入的讀取和高輸送量串流效能。 在大部分情況下,您會想要 在虛擬網路 內建立 HBase 叢集,讓其他 HDInsight 叢集和應用程式可以直接存取數據表。

Azure 資料總管

Azure 數據總 管是記錄和遙測數據的快速且高度可調整的數據探索服務。 它可協助您處理新式軟體發出的許多數據流,以便收集、儲存和分析數據。 Azure 數據總管非常適合從任何數據源分析大量數據,例如網站、應用程式、IoT 裝置等等。 這份資料會用於診斷、監視、報告、機器學習及其他分析功能。 Azure 數據總管可讓您輕鬆地內嵌此數據,並可讓您在數秒內對數據執行複雜的臨機操作查詢。

Azure 數據總管可以線性 地相應放大 ,以增加擷取和查詢處理輸送量。 Azure 數據總管叢集可以部署到啟用專用網的 虛擬網絡

索引鍵選取準則

若要縮小選擇範圍,請從回答下列問題開始:

  • 您需要任何類型的文字或二進位數據的受控、高速、雲端式記憶體嗎? 如果是,請選取其中一個檔案記憶體或分析選項。

  • 您需要針對平行分析工作負載和高輸送量/IOPS 優化的檔案記憶體嗎? 如果是,請選擇已調整為分析工作負載效能的選項。

  • 您是否需要在無架構資料庫中儲存非結構化或半結構化數據? 如果是,請選取其中一個非關係型或分析選項。 比較索引和資料庫模型的選項。 視您需要儲存的數據類型而定,主資料庫模型可能是最大的因素。

  • 您可以在您的區域中使用服務嗎? 檢查每個 Azure 服務的區域性可用性。 請參閱依區域提供的產品

功能矩陣

下表摘要說明功能的主要差異。

檔案儲存功能

功能 Azure Data Lake Storage Gen1 Azure Blob 儲存體容器
目的 適用於巨量資料分析工作負載的最佳化儲存機制 適用於各種儲存案例的一般用途物件存放區
使用案例 Batch、串流分析和機器學習數據,例如記錄檔、IoT 數據、單擊串流、大型數據集 任何類型的文字或二進位數據,例如應用程式後端、備份數據、串流媒體記憶體,以及一般用途數據
結構 階層式檔案系統 具有扁平命名空間的物件存放區
驗證 根據 Microsoft Entra 身分識別 根據共用秘密帳戶存取金鑰和共用存取簽章金鑰,以及 Azure 角色型存取控制 (Azure RBAC)
驗證通訊協定 開啟授權 (OAuth) 2.0。 呼叫必須包含 Microsoft Entra ID 所簽發的有效 JWT (JSON Web 令牌) 雜湊式訊息驗證碼 (HMAC)。 呼叫必須包含透過 HTTP 要求之一部分的 Base64 編碼 SHA-256 雜湊。
授權 可攜式作業系統介面 (POSIX) 訪問控制清單 (ACL)。 根據 Microsoft Entra 身分識別的 ACL 可以設定檔案和資料夾層級。 針對帳戶層級授權,請使用 帳戶存取密鑰。 針對帳戶、容器或 Blob 授權,請使用 共用存取簽章密鑰
稽核 [可用]。 可用的
待用加密 透明,伺服器端 透明,伺服器端;用戶端加密
開發人員 SDK .NET、Java、Python、Node.js .NET、Java、Python、Node.js、C++、Ruby
分析工作負載效能 平行分析工作負載、高輸送量和IOPS的優化效能 未針對分析工作負載進行優化
大小限制 帳戶大小、檔案大小或檔案數目沒有限制 這裡記載 的特定限制
異地備援 本地備援(本地備援記憶體(LRS))、全域備援(異地備援記憶體(GRS)、讀取存取全域備援(讀取許可權異地備援記憶體(RA-GRS))、區域備援(區域備援記憶體(ZRS))。 本地備援 (LRS), 全域備援 (GRS), 讀取存取全域備援 (RA-GRS), 區域備援 (ZRS) 。 詳細資訊請參閱 這裡

NoSQL 資料庫功能

功能 Azure Cosmos DB HDInsight 上的 HBase
主資料庫模型 檔案存放區、圖形、索引鍵/值存放區、寬數據行存放區 寬數據行存放區
次要索引 No
SQL 語言支援 Yes 是 (使用 Phoenix JDBC 驅動程式)
一致性 強式、限定過期、會話、一致前置詞、最終 強式
原生 Azure Functions 整合 No
自動全域散發 任何HBase 叢集復寫都無法 跨區域設定最終一致性
計價模式 視需要,彈性調整要求單位(RU)每秒收費,彈性可調整的記憶體 HDInsight 叢集的每分鐘定價(節點的水平調整),記憶體

分析資料庫功能

功能 Azure 資料總管
主資料庫模型 關係型 (資料行存放區)、遙測和時間序列存放區
SQL 語言支援 Yes
計價模式 彈性調整的叢集實例
驗證 根據 Microsoft Entra 身分識別
待用加密 支持的客戶自控金鑰
分析工作負載效能 平行分析工作負載的優化效能
大小限制 線性可調整

參與者

本文由 Microsoft 維護。 原始投稿人如下。

主體作者:

下一步