天天看點

在檔案存儲HDFS版上使用 TensorFlow一 目的二 背景資訊三 準備工作四 配置 TensorFlow 支援檔案存儲HDFS版五 驗證

一 目的

本文介紹如何在檔案存儲HDFS版上使用 TensorFlow。

二 背景資訊

TensorFlow 是一個采用資料流圖(Data Flow Graphs)用于數值計算的開源軟體庫。

注意:TensorFlow 對檔案系統的 Scheme 有特别的指定,目前在檔案存儲HDFS版上使用 TensorFlow 時需要對TensorFlow 源碼進行修改,您可參考第四章節重新編譯安裝 TensorFlow。

三 準備工作

  1. 開通檔案存儲HDFS版服務并建立檔案系統執行個體和挂載點,詳情請參見: 快速入門
  2. 在 Hadoop 叢集所有節點上安裝JDK。版本不能低于1.8。
  3. 在 Hadoop 叢集中配置檔案存儲HDFS版執行個體,詳情請參見: 挂載檔案系統
  4. 根據您目前使用的 TensorFlow 版本下載下傳源碼,下載下傳位址: 官方連結 。本文檔中使用的 TensorFlow 版本為 2.5.2。

四 配置 TensorFlow 支援檔案存儲HDFS版

4.1 添加檔案存儲HDFS版支援

在 TensorFlow 源碼中添加對檔案存儲HDFS版支援 Patch:

Support aliyun HDFS

說明:TensorFlow 代碼版本差異較大,如果您使用的 TensorFlow 非 2.5.2 版本,遇到代碼問題,可以聯系檔案存儲HDFS版團隊協助。

4.2 編譯TensorFlow

按照 4.1 章節對TensorFlow源碼修改進行編譯,編譯步驟請參考官方編譯文檔:

Build from source

 。

五 驗證

參考以下步驟,通過 TensorFlow 讀取檔案存儲HDFS版上的資料進行連通性驗證:

## 在檔案存儲HDFS版上建立測試檔案
hadoop fs -mkdir  dfs://f-xxxx.cn-xxxx.dfs.aliyuncs.com:10290/test_tensorflow
hadoop fs -touchz  dfs://f-xxxx.cn-xxxx.dfs.aliyuncs.com:10290/test_tensorflow/words
echo "hello tensorflow" | hadoop fs -appendToFile - dfs://f-xxxx.cn-xxxx.dfs.aliyuncs.com:10290/test_tensorflow/words

## 使用 TensorFlow 檢視檔案存儲HDFS版上的資料
## 其中 f-xxxx.cn-xxxx.dfs.aliyuncs 為您的檔案系統挂載點域名, 需根據實際情況進行修改。
>>> import tensorflow as tf
>>> tf.__version__
'2.5.2'
>>> tf.io.gfile.listdir('dfs://f-xxxx.cn-xxxx.dfs.aliyuncs.com:10290/test_tensorflow')
['words']
>>> with tf.compat.v2.io.gfile.GFile('dfs://f-xxxx.cn-xxxx.dfs.aliyuncs.com:10290/test_tensorflow/words') as rf:
...     rf.read()
...
'hello tensorflow\n'      
在檔案存儲HDFS版上使用 TensorFlow一 目的二 背景資訊三 準備工作四 配置 TensorFlow 支援檔案存儲HDFS版五 驗證

了解更多關于檔案存儲HDFS版的産品資訊,歡迎通路

https://www.aliyun.com/product/alidfs

如果您對檔案存儲HDFS版有任何問題,歡迎釘釘掃描以下二維碼加入檔案存儲HDFS版技術交流群。

在檔案存儲HDFS版上使用 TensorFlow一 目的二 背景資訊三 準備工作四 配置 TensorFlow 支援檔案存儲HDFS版五 驗證