全部產品
Search
文件中心

E-MapReduce:Apache HDFS透明緩衝加速

更新時間:Jul 01, 2024

Apache HDFS透明緩衝加速可以利用計算叢集的閑置儲存資源對遠端HDFS叢集進行資料緩衝,避免了計算叢集或服務佔用核心叢集過多頻寬。當HDFS叢集和計算叢集分離,HDFS叢集訪問效能不及預期時,您可以通過在計算叢集或靠近計算叢集的地方快取資料來進行加速。

前提條件

已在E-MapReduce上建立EMR-3.42.0及後續版本、EMR-5.6.0及後續版本的叢集,且選擇JINDODATA服務,詳情請參見建立叢集

操作流程

  1. 步驟一:佈建服務端

  2. 步驟二:配置JindoSDK

  3. 步驟三:磁碟空間水位控制

  4. 步驟四:訪問HDFS

步驟一:佈建服務端

  1. 進入JindoData服務的common頁簽。

    1. 在頂部功能表列處,根據實際情況選擇地區和資源群組

    2. 叢集管理頁面,單擊目的地組群操作列的叢集服務

    3. 單擊JindoData服務地區的配置

    4. 單擊common頁簽。

  2. 新增配置。

    1. 單擊自訂配置

    2. 新增配置項對話方塊中,新增以下配置項。

      新增配置項的具體操作,請參見添加配置項

      叢集類型

      參數

      描述

      普通叢集

      jindofsx.hdfs.user

      訪問HDFS使用的使用者名稱,例如hadoop。

      HA叢集

      jindofsx.hdfs.XXX.dfs.ha.namenodes

      表示hdfs-site.xml中dfs.ha.namenodes.XXX的值。例如:nn1、nn2、nn3。

      jindofsx.hdfs.XXX.dfs.namenode.rpc-address.nn1

      表示hdfs-site.xml中dfs.namenode.rpc-address.XXX.nn1的值。例如:master-1-1:8020。

      jindofsx.hdfs.XXX.dfs.namenode.rpc-address.nn2

      表示hdfs-site.xml中dfs.namenode.rpc-address.XXX.nn2的值。例如:master-1-2:8020。

      jindofsx.hdfs.XXX.dfs.namenode.rpc-address.nn3

      表示hdfs-site.xml中dfs.namenode.rpc-address.XXX.nn3的值。例如:master-1-3:8020。

      說明

      請根據您叢集的類型,新增相應的配置項。XXX為叢集中配置hdfs-site.xml的dfs.nameservices參數值,例如hdfs-cluster

    3. 單擊確定

    4. 在彈出的對話方塊中,輸入執行原因,單擊確定

  3. 重啟服務。
    1. 在JindoData服務頁面,選擇更多操作 > 重啟
    2. 在彈出的對話方塊中,輸入執行原因,單擊確定
    3. 確認對話方塊中,單擊確定

步驟二:配置JindoSDK

重要 此配置為用戶端配置,無需重啟JindoData服務。
  1. 進入配置頁面。

    1. 在頂部功能表列處,根據實際情況選擇地區和資源群組

    2. 叢集管理頁面,單擊目的地組群右側操作列的叢集服務

    3. 單擊Hadoop-Common服務地區的配置

    4. 單擊core-site.xml頁簽。

  2. 新增和修改以下配置項。

    新增配置項的具體操作,詳情請參見添加配置項。修改配置項的具體操作,詳情請參見修改配置項

    內容

    屬性

    參數

    描述

    配置統一名字空間使用的實作類別

    必選

    fs.hdfs.impl

    固定值為com.aliyun.jindodata.hdfs.JindoHdfsFileSystem

    必選

    fs.AbstractFileSystem.hdfs.impl

    固定值為com.aliyun.jindodata.hdfs.HDFS

    配置xengine類型

    必選

    fs.xengine

    固定值為jindofsx

    配置JindoFSx Namespace服務地址

    必選

    fs.jindofsx.namespace.rpc.address

    格式為${headerhost}:8101。例如,master-1-1:8101。

    說明 如果使用高可用NameSpace,配置詳情請參見高可用JindoFSx Namespace配置和使用

    開啟緩衝加速功能

    必選

    fs.jindofsx.data.cache.enable

    資料緩衝開關:

    • false(預設值):禁用資料緩衝。

    • true:啟用資料緩衝。

    配置HA Namenodes

    說明

    如果為HA叢集,則需要配置該類參數。

    可選

    fs.jindofsx.hdfs.XXX.dfs.ha.namenodes

    表示hdfs-site.xml中dfs.ha.namenodes.XXX的值。例如:nn1、nn2、nn3。

    可選

    fs.jindofsx.hdfs.XXX.dfs.namenode.rpc-address.nn1

    表示hdfs-site.xml中dfs.namenode.rpc-address.XXX.nn1的值。例如:master-1-1:8020。

    可選

    fs.jindofsx.hdfs.XXX.dfs.namenode.rpc-address.nn2

    表示hdfs-site.xml中dfs.namenode.rpc-address.XXX.nn2的值。例如:master-1-2:8020。

    可選

    fs.jindofsx.hdfs.XXX.dfs.namenode.rpc-address.nn3

    表示hdfs-site.xml中dfs.namenode.rpc-address.XXX.nn3的值。例如:master-1-3:8020。

    開啟中繼資料快取功能

    可選

    fs.jindofsx.meta.cache.enable

    中繼資料快取開關:

    • false(預設值):禁用中繼資料快取。

    • true:啟用中繼資料快取。

    開啟小檔案最佳化緩衝功能

    可選

    fs.jindofsx.slice.cache.enable

    小檔案快取最佳化開關:

    • false(預設值):禁用小檔案快取。

    • true:啟用小檔案快取。

    開啟短路讀功能

    可選

    fs.jindofsx.short.circuit.enable

    短路讀開關:

    • true(預設值):開啟短路讀開關。

    • false:關閉短路讀開關。

  3. 儲存配置。

    1. 單擊服務配置地區的儲存

    2. 確認修改對話方塊中,輸入執行原因,開啟自動更新配置,單擊確定

步驟三:磁碟空間水位控制

緩衝啟用後,JindoFSx服務會自動管理本機快取備份,通過水位清理本機快取,請您根據需求配置一定的比例用於緩衝。JindoFSx後端基於HDFS,可以提供海量的儲存,但是本地碟的容量是有限的,因此JindoFSx會自動淘汰本地較冷的資料備份。您可以通過修改storage.watermark.high.ratiostorage.watermark.low.ratio兩個參數來調節本機存放區的使用容量,取值範圍為0~1,表示使用磁碟空間的比例。

  1. 修改磁碟水位配置。

    在JindoData服務的配置頁簽內的storage頁簽,修改以下參數。jindodata_radio

    參數

    描述

    storage.watermark.low.ratio

    表示使用量的下水位比例,觸發清理後會自動清理冷資料,將快取資料目錄佔用空間清理到下水位。預設值:0.2。

    storage.watermark.high.ratio

    表示磁碟使用量的上水位比例,每塊資料盤的快取資料目錄佔用的磁碟空間到達上水位即會觸發清理。預設值:0.4。如果需要比較高的磁碟利用率可以設定較大值。

    說明

    修改該參數時,下水位比例必須小於上水位比例,設定合理的值即可。

  2. 儲存配置。

    1. 單擊下方的儲存

    2. 在彈出的對話方塊中,輸入執行原因,單擊確定

  3. 重啟服務。

    1. 在JindoData服務頁面,選擇右上方的更多操作 > 重啟

    2. 彈出的對話方塊中,輸入執行原因,其他參數保持預設,單擊確定

    3. 確認對話方塊中,單擊確定

步驟四:訪問HDFS

您通過hdfs://首碼讀取HDFS上的資料後,在資料緩衝開關開啟時,會自動緩衝到JindoFSx儲存加速系統中,後續通過hdfs://訪問相同的資料就能夠命中緩衝。