開發與維運

數據湖實操講解【OSS 訪問加速】第六講:Hadoop/Spark 訪問 OSS 加速

本期導讀 :【OSS 訪問加速】第六講

主題:Hadoop/Spark 訪問 OSS 加速

講師:流影,阿里巴巴計算平臺事業部 EMR 技術專家

內容框架:

  • JindoFS SDK 介紹
  • Hadoop 使用 JindoFS SDK
  • Spark 使用 JindoFS SDK
  • 演示

直播回放鏈接:(5/6講)

https://developer.aliyun.com/live/246811

一、JindoFS SDK 介紹

  • JindoFS SDK 是一個簡單易用面向 Hadoop/Spark 生態的 OSS 客戶端,為阿里雲 OSS 提供高度優化的 HadoopFileSystem 實現。
  • 通過 JindoFS SDK,可以在 Hadoop 環境中直接使用 oss://bucket/ 的方式訪問阿里雲 OSS 上的內容。
  • 例如:

image.png


為什麼使用 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下。

image.png

配置 JindoFSOSS 實現類

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

image.png

配置 OSSAccess Key

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

image.png

使用 JindoFSSDK 訪問 OSS

用HadoopShell訪問OSS,下面列舉了幾個常用的命令。

  • put操作:hadoop fs -put <path> oss://<bucket>/  
  • ls 操作:hadoop fs -ls oss://<bucket>/
  • mkdir操作:hadoopfs -mkdiross://<bucket>/<path>
  • rm操作:hadoop fs rm oss://<bucket>/<path>

三、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. 下載JindoFSSDK
  2. 將jar包拷貝到hadoopclasspath
  3. 修改配置
  4. 演示hadoop 命令
  5. 將jar包拷貝到Spark${SPARK_HOME}/jars
  6. 演示Spark 訪問 OSS


直接觀看第三課(5/6講)視頻回放,獲取實例講解~

https://developer.aliyun.com/live/246811

相關資源

1.下載JindoFS SDK:

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

2.Hadoop 使用 JindoSDK:

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

3.Spark 使用 JindoSDK:

https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/spark/jindosdk_on_spark.md



Github鏈接:

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

不錯過每次直播信息、探討更多數據湖 JindoFS+OSS 相關技術問題,歡迎掃碼加入釘釘交流群!

1835a71d3367446db32f7169e4ae62e3.jpg

Leave a Reply

Your email address will not be published. Required fields are marked *