天天看點

Fluid + JindoFS 對 HDFS 上的資料進行訓練加速 | 學習筆記

開發者學堂課程【資料湖 JindoFS + OSS 實操幹貨36講:Fluid + JindoFS 對 HDFS 上的資料進行訓練加速】學習筆記,與課程緊密聯系,讓使用者快速學習知識。

課程位址:

https://developer.aliyun.com/learning/course/833/detail/13977

Fluid + JindoFS 對HDFS上的資料進行訓練加速

内容介紹

一、什麼是Fluid + JindoFS ( JindoRuntime )

二、為什麼使用JindoRuntime加速HDFS

三、如何使用JindoRuntime

四、示範

一、什麼是 Fluid + JindoFS ( JindoRuntime )

Fluid 介紹

CNCF Fluid 是一個開源的 Kubernetes 原生的分布式資料集編排和加速引擎,主要服務于雲原生場景下的資料密集型應用,例如大資料應用、AI應用等。

(https://github.com/fiuid-cloudnative/fluid)

➢Fluid 功能概念

Fluid 不是全存儲加速和管理,而是應用使用的資料集加速和管理。

01 Dataset :資料集是邏輯上相關的一組資料的集合,一緻的檔案特性,會被同一運算引擎使用。

02 Runtime:實作資料集安全性,版本管理和資料加速等能力的執行引擎的接口,定義了一系列生命周期的方法。

03 JindoRuntime 核心基于 JindoFS,是支 撐Datase t資料管理和緩存的執行引擎高效實作。

Fluid JindoRuntime

➢BackGround

雲原生環境中使用 JindoFS 緩存加速引擎并進行緩存資料集編排和應用編排。

二、為什麼使用 JindoRuntime 加速 HDFS

(1)HDFS 用于 AI 訓練場景面臨的問題:

➢計算存儲分離,資料讀取性能較差,無法滿足 AI 訓練作業的 I0 性能。

➢很多深度學習訓練架構并不适配原生 HDFS 接口,大大增加了開發難度。

➢HDFS 叢集壓力大,甚至存在穩定性問題。

(2)JindoRuntime 功能支援

➢Master 支援 Raft 高可用

➢支援資料親和性排程(nodeffinity), 選擇合适的緩存節點

➢支援資料預加載 DataLoad CRD

➢支援指定 Fuse 使用者通路 HDFS

https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/jindo_fluid/jindo_fluid

_overview.md

三、如何使用 JindoRuntime

JindoRuntime 加速 HDFS 基本步驟:

➢下載下傳并安裝Fluid :

https:githu.com/laliun/alibabacloud-

jindodata/blob/master/docs/jindo_fluid/jindo_fluid_ jindofs_hdfs_introduce.md

➢建立 Dataset

➢建立 JindoRuntime

➢緩存預加載 DataLoad

➢執行 AI 訓練作業

➢環境要求

1. Kubernetes version> 1.14,支援CSI

2. Golang 1.12+

3. Helm 3

4. Fluid 0.6.0

➢文檔連結:

https://github.com/aliyun/alibabacloud-

jindofs/blob/master/docs/jindo_fluid/jindo_fluid _overview.md

ISSUE:

https://github.com/aliyun/alibabacloud-jindofs/issues

Fluid JindoRuntime使用文檔

●快速入門

●安裝文檔

●加速 OSS上資料

●加速 HDFS.上資料

●加速 S3上資料

●使用參數加密

●資料親和性排程

●Master 節點親和性部署

●多 Master 節點部署

●Fuse 用戶端節點親和性部署

●資料容忍污點排程

●Fuse 用戶端全局部署

●Dataset手 動擴縮容

●使用 Placement 在同一 個叢集上部署多個 dataset.資料源 mount 到根目錄下

●資料預加載

●資料緩存和中繼資料緩存

●問題診斷及處理