HDInsight 中的 Azure Data Lake Storage Gen2 概觀

Azure Data Lake Storage Gen2 採用 Azure Data Lake Storage Gen1 的核心功能,並將這些功能整合到 Azure Blob 儲存體。 這些功能包括與 Hadoop 相容的檔案系統、Microsoft Entra ID 和 POSIX 型存取控制清單 (ACL)。 此組合可讓您擁有 Azure Data Lake Storage Gen1 的效能優勢。 同時還能使用 Blob 儲存體的分層功能和資料生命週期管理。

如需 Azure Data Lake Storage Gen2 的詳細資訊,請參閱 Azure Data Lake Storage Gen2 簡介

Azure Data Lake Storage Gen2 的核心功能

  • 與 Hadoop 相容的存取權:在 Azure Data Lake Storage Gen2 中,您可以管理及存取資料,就如同使用 Hadoop 分散式檔案系統 (HDFS) 一樣。 Azure Blob 檔案系統 (ABFS) 驅動程式可在所有 Apache Hadoop 環境中使用,包括 Azure HDInsight 和 Azure Databricks。 使用 ABFS 存取儲存在 Data Lake Storage Gen2 中的資料。

  • POSIX 權限的超集合:Data Lake Gen2 的安全性模型可支援 ACL 和 POSIX 權限,以及一些 Data Lake Storage Gen2 特有的額外細微姓。 這些設定可透過系統管理工具或 Apache Hive 和 Apache Spark 這類架構來配置。

  • 符合成本效益:Data Lake Storage Gen2 提供低成本儲存體容量和異動功能。 Azure Blob 儲存體生命週期可協助降低成本,因為當資料在整個生命週期中移動時,您可以調整費率。

  • 與 Blob 儲存體工具、架構及應用程式相容:Data Lake Storage Gen2 可繼續搭配使用各種 Blob 儲存體工具、架構及應用程式。

  • 最佳化的驅動程式:ABFS 驅動程式已針對巨量資料分析完成特別最佳化。 對應的 REST API 會透過分散式檔案系統 (DFS) 端點 dfs.core.windows.net 呈現。

Azure Data Lake Storage Gen 2 的新功能

用於安全存取檔案的受控識別

Azure HDInsight 會使用受控識別來保護叢集對 Azure Data Lake Storage Gen2 中檔案的存取。 受控識別是 Microsoft Entra ID 的功能,可提供一組自動受控的認證給 Azure 服務。 這些認證可用來向任何支援 Active Directory 驗證的服務進行驗證。 使用受控識別不需要將認證儲存在程式碼或組態檔中。

如需詳細資訊,請參閱適用於 Azure 資源的受控識別

Azure Blob 檔案系統驅動程式

Apache Hadoop 應用程式原本就預期會從本機磁碟儲存體讀取和寫入資料。 Hadoop 檔案系統驅動程式 (例如 ABFS) 可讓 Hadoop 應用程式搭配使用雲端儲存體。 運作方式是模擬一般 Hadoop 檔案系統作業。 驅動程式會將從應用程式接收的命令,轉換為實際雲端儲存空間平台理解的作業。

先前,Hadoop 檔案系統驅動程式已將所有檔案系統作業轉換成用戶端上的 Azure 儲存體 REST API 呼叫。 然後叫用 REST API。 不過,此用戶端轉換會造成單一檔案系統作業 (例如檔案重新命名) 有多個 REST API 呼叫。 ABFS 已將 Hadoop 檔案系統邏輯從用戶端移至伺服器端。 Azure Data Lake Storage Gen2 API 現在會與 Blob API 平行執行。 此移轉可改善效能,因為現在的一般 Hadoop 檔案系統作業可透過一個 REST API 呼叫來執行。

如需詳細資訊,請參閱 Azure Blob 檔案系統驅動程式 (ABFS):Hadoop 專用的 Azure 儲存體驅動程式

Azure Data Lake Storage Gen 2 的 URI 配置

Azure Data Lake Storage Gen2 會使用新的 URI 配置,從 HDInsight 存取 Azure 儲存體中的檔案:

abfs://<FILE_SYSTEM_NAME>@<ACCOUNT_NAME>.dfs.core.windows.net/<PATH>

URI 配置會提供 SSL 加密存取。

<FILE_SYSTEM_NAME> 可識別檔案系統 Data Lake Storage Gen2 的路徑。

<ACCOUNT_NAME> 可識別 Azure 儲存體帳戶名稱。 需要使用完整網域名稱 (FQDN)。

<PATH> 是檔案或目錄 HDFS 路徑名稱。

如果未指定 <FILE_SYSTEM_NAME><ACCOUNT_NAME> 的值,則會使用預設檔案系統。 對於預設檔案系統上的檔案,使用相對路徑或絕對路徑。 例如,可使用下列其中一個路徑來參考 HDInsight 叢集隨附的 hadoop-mapreduce-examples.jar 檔案:

abfs://myfilesystempath@myaccount.dfs.core.windows.net/example/jars/hadoop-mapreduce-examples.jar
abfs:///example/jars/hadoop-mapreduce-examples.jar /example/jars/hadoop-mapreduce-examples.jar

注意

在 HDInsight 2.1 和 1.6 版叢集中的檔案名稱是 hadoop-examples.jar。 當您使用 HDInsight 外部的檔案時,您會發現大部分的公用程式無法辨識 ABFS 格式,但可預期基本的路徑格式,例如 example/jars/hadoop-mapreduce-examples.jar

如需詳細資訊,請參閱使用 Azure Data Lake Storage Gen2 URI

下一步