天天看點

Hadoop/Spark 通路 OSS 加速 | 學習筆記

開發者學堂課程【資料湖 JindoFS + OSS 實操幹貨36講:Hadoop/Spark 通路 OSS 加速】學習筆記,與課程緊密聯系,讓使用者快速學習知識。

課程位址:

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

Hadoop/Spark 通路 OSS 加速

内容介紹

一、JindoFS SDK 介紹

二、 Hadoop 使用 JindoFS SDK

三、Spark 使用 JindoFS SDK

四、示範

•       JindoFS SDK 是一個簡單易用面向 Hadoop/Spark 生态的 OSS 用戶端,為阿裡雲 OSS 提供高度優化的 HadoopFileSystem 實作。

•       通過 JindoFS SDK,可以在 Hadoop 環境中直接使用 oss://bucket/ 的方式通路阿裡雲 OSS 上的内容。

例如:

hadoop dfs -ls oss: / / bucket/dir

為什麼使用 JindoFS SDK

•       優異的性能表現:和開源版本的 Hadoop-OSS-SDK 進行對比,各項操作性能均顯著好于 Hadoop-OSS-SDK

•       良好的相容性:相容市面上大部分 Hadoop 版本,JindoFS SDK 在 Hadoop2.3 及以上的版本上驗證通過

•       專業團隊維護:阿裡雲 EMRHadoop 團隊維護,JindoFS Hadoop SDK 在阿裡雲 EMR等産品中廣泛使用

•       功能更新快:及時跟進 OSS 最新特性和優化,版本更新及時。

Hadoop 使用 JindoFS SDK 通路 OSS

安裝 jar 包

•       下載下傳最新的jar包 jindofs-sdk-x.x.x.jar,将sdk包安裝到hadoop的classpath下。 

配置 JindoFSOSS 實作類

•       将 JindoFS OSS 實作類配置到Hadoop的core-site.xml中。

fs.AbstractFileSystem.oss.implcom.aliyun.emr.fs.oss.osS fs.oss.impl com.aliyun.emr.fs.oss.Jindo0ssFileSystem

配置 OSSAccess Key

•       将OSS的AccessKey、Access Key Secret、Endpoint等預先配置在Hadoop的core-site.xml中。

jindo. common.accessKeyIdxxx jindo.common.accessKeySecretxxx jindo.common.oss.endpointoss-cn-xxx.aliyuncs.com

二、使用 JindoFSSDK 通路 OSS

用HadoopShell通路OSS,下面列舉了幾個常用的指令。

•       put操作:hadoop fs -put  oss:///

•       ls 操作:hadoop fs -ls oss:///

•       mkdir操作:hadoopfs -mkdiross:///

•       rm操作: hadoop fs rm oss:///

Spark 使用 JindoFS SDK 通路 OSS

在 Spark CLASSPATH 中添加 JindoFS SDK

•       下載下傳最新的jar包 jindofs-sdk-x.x.x.jar,将sdk包安裝到 Spark的classpath下。

•       cp jindofs-sdk-${version}.jar $SPARK_HOME/jars/

三、配置 JindoFS SDK

全局配置:參考 Hadoop 配置

任務級别配置:spark-submit--conf

 spark.hadoop.fs.AbstractFileSystem.oss.impl=com.aliyun.emr.fs.oss.OSS --conf

spark.hadoop.fs.oss.impl=com.aliyun.emr.fs.oss.JindoOssFileSystem --conf spark.hadoop.fs.jfs.cache.oss.accessKeyId=xxx --conf spark.hadoop.fs.jfs.cache.oss.accessKeySecret=xxx --conf spark.hadoop.fs.jfs.cache.oss.endpoint=oss-cn-xxx.aliyuncs.com

通路 OSS

•       完成配置之後,啟動的 Spark 任務通路 OSS 預設就使用 JindoSDK 通路

•       \1. 下載下傳 JindoFS SDK

•       \2. 将jar包拷貝到 hadoop classpath

•       \3. 修改配置

•       \4. 示範 hadoop 指令

•       \5. 将 jar 包拷貝到 Spark${SPARK_HOME}/jars

•       \6. 示範 Spark 通路 OSS