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 介绍

•       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

 

 

上一篇:RabbitMQ之监控(1)


下一篇:【转载】花20分钟写的-大白话讲解如何给github上项目贡献代码