详情页标题前

阿里云对象存储OSS从HDFS迁移数据到OSS-HDFS-云淘科技

详情页1

本文介绍如何使用阿里云Jindo DistCp从HDFS迁移数据OSS-HDFS。

前提条件

  • JDK 1.8及以上版本。
  • 如果您使用的是自建ECS集群,需要具备Hadoop2.7+或Hadoop3.x环境以及进行MapReduce作业的能力。
  • 如果您使用的是阿里云E-MapReduce,需使用EMR-5.6.0及后续版本或EMR-3.40.0及后续版本。

背景信息

阿里云Jindo DistCp(分布式文件拷贝工具)用于大规模集群内部或集群之间拷贝文件。Jindo DistCp使用MapReduce实现文件分发,错误处理和恢复,把文件和目录的列表作为MapReduce任务的输入,每个任务会完成源列表中部分文件的拷贝。Jindo
DistCp全量支持HDFS之间、HDFS与OSS之间、HDFS与OSS-HDFS之间以及OSS-HDFS之间数据拷贝场景,提供多种个性化拷贝参数和多种拷贝策略。

使用阿里云Jindo DistCp迁移数据时,有以下优势:

  • 效率高,在测试场景中最高可达到1.59倍的加速。
  • 基本功能丰富,提供多种拷贝方式和场景优化策略。
  • 深度结合OSS,对文件提供归档、压缩等操作。
  • 实现No-Rename拷贝,保证数据一致性。
  • 场景全面,可完全替代Hadoop DistCp,目前支持Hadoop2.7+和Hadoop3.x。

步骤一:下载JAR包

JindoData 4.x.x版本

步骤二:配置OSS-HDFS服务的AccessKey

您可以通过以下任意方式配置OSS-HDFS服务的AccessKey:

  • 在示例命令中配置AccessKey

    例如,在将HDFS中的/data路径的数据迁移到OSS-HDFS指定路径的示例中结合–hadoopConf选项配置AccessKey。

    hadoop jar jindo-distcp-tool-${version}.jar --src data/ --dest oss://destbucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/ --hadoopConf fs.oss.accessKeyId=yourkey --hadoopConf fs.oss.accessKeySecret=yoursecret --parallelism 10
  • 通过配置文件预先配置AccessKey

    将OSS-HDFS的fs.oss.accessKeyId、fs.oss.accessKeySecret预先配置在Hadoop的core-site.xml文件里。示例命令如下:

    
        
            fs.oss.accessKeyId
            LTAI5t7h6SgiLSganP2m****
        
    
        
            fs.oss.accessKeySecret
            KZo149BD9GLPNiDIEmdQ7dyNKG****
        
    

步骤三:配置OSS-HDFS服务Endpoint

访问OSS-HDFS服务时需要配置Endpoint。推荐访问路径格式为oss://./,例如oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/exampleobject.txt。配置完成后,JindoSDK会根据访问路径中的Endpoint访问对应的OSS-HDFS服务接口。

您还可以通过其他方式配置OSS-HDFS服务Endpoint,且不同方式配置的Endpoint存在生效优先级。更多信息,请参见配置Endpoint的其他方式。

步骤四:将HDFS指定路径下的数据全量迁移至OSS-HDFS

以下以Jindo DistCp 4.4.0版本为例,您可以根据实际环境替换对应的版本号。

  • 命令格式
    hadoop jar jindo-distcp-tool-${version}.jar --src path --dest oss://bucketname.region.oss-dls.aliyuncs.com/path --hadoopConf fs.oss.accessKeyId=yourkey --hadoopConf fs.oss.accessKeySecret=yoursecret --parallelism 10

    参数及选项说明如下:

    参数及选项 说明 示例
    –src 待迁移或拷贝的HDFS数据所在的路径。 data/
    –dest OSS-HDFS中存放迁移或拷贝数据的目标路径。 oss://destbucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/
    –hadoopConf 访问OSS-HDFS服务的AccessKey ID和AccessKey Secret。
    • AccessKey ID
      LTAI5t7h6SgiLSganP2m****
    • AccessKey Secret
      KZo149BD9GLPNiDIEmdQ7dyNKG****
    –parallelism 根据集群资源调整任务并发数。 10
  • 使用示例

    将HDFS指定目录data/下的数据全量迁移或拷贝到OSS-HDFS目标路径oss://destbucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/下。

    hadoop jar jindo-distcp-tool-4.4.0.jar --src data/ --dest oss://destbucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/ --hadoopConf fs.oss.accessKeyId=LTAI5t7h6SgiLSganP2m**** --hadoopConf fs.oss.accessKeySecret=KZo149BD9GLPNiDIEmdQ7dyNKG**** --parallelism 10

(可选)将HDFS指定路径下的数据增量迁移至OSS-HDFS

如果您仅希望拷贝在上一次全量迁移或拷贝后源路径下新增的数据,此时您可以结合–update选项完成数据的增量迁移或拷贝。

将HDFS指定目录data/下的数据增量迁移或拷贝到OSS-HDFS目标路径oss://destbucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/下。

hadoop jar jindo-distcp-tool-4.4.0.jar --src data/ --dest oss://destbucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/ --hadoopConf fs.oss.accessKeyId=LTAI5t7h6SgiLSganP2m**** --hadoopConf fs.oss.accessKeySecret=KZo149BD9GLPNiDIEmdQ7dyNKG**** --update --parallelism 10

更多参考

关于Jindo DistCp的其他使用场景,请参见Jindo DistCp使用说明。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/159530.html

(0)
上一篇 2023年12月10日
下一篇 2023年12月10日
详情页2

相关推荐

  • 阿里云RDS数据库使用DTS创建数据订阅-云淘科技

    DTS支持创建自建PosgreSQL、RDS PostgreSQL数据订阅任务。本文以RDS PostgreSQL为例介绍配置流程。 前提条件 已创建源RDS PostgreSQL实例,创建方式,请参见创建RDS PostgreSQL实例。 已设置源RDS PostgreSQL实例的参数wal_level = logical。设置方式,请参见设置实例参数。 …

    阿里云数据库 2023年12月9日
  • 阿里云日志服务SLS为数据加工任务开启监控告警-云淘科技

    为数据加工任务开启监控告警后,日志服务会在数据加工存在异常时,为您发送告警通知,便于您快速发现数据加工过程中的异常问题。本文介绍如何为数据加工任务开启监控告警。 前提条件 已创建数据加工任务。更多信息,请参见创建数据加工任务。背景信息创建数据加工任务后,日志服务默认为每个加工任务创建一个数据加工仪表盘。在数据加工诊断仪表盘中,建议您关注如下两方面的指标信息。…

    阿里云日志服务SLS 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云对象存储OSS通过Hadoop Shell命令访问OSS-HDFS服务-云淘科技

    本文介绍如何通过Hadoop Shell命令访问OSS-HDFS服务。 环境准备 EMR环境中,默认已安装JindoSDK,可以直接使用。说明 访问OSS-HDFS服务,需创建EMR-3.44.0及以上版本或EMR-5.10.0及以上版本的集群。 非EMR环境,请先安装部署JindoSDK,详情请参见在非EMR集群中部署JindoSDK。说明 访问OSS-H…

    阿里云对象存储 2023年12月10日
  • 阿里云日志服务SLSDeleteConfig-云淘科技

    调用DeleteConfig接口删除指定的Logtail配置。 接口说明 Host由Project名称和日志服务Endpoint构成,您需要在Host中指定Project。 如果Logtail配置已经被应用到机器组,删除该配置,将无法采集到机器组数据。 已创建并获取AccessKey。更多信息,请参见访问密钥。 阿里云账号AccessKey拥有所有API的访…

    阿里云日志服务SLS 2023年12月10日
  • 阿里云对象存储OSSGo请求者付费模式-云淘科技

    请求者付费模式是指由请求者支付读取存储空间(Bucket)内数据时产生的流量费用和请求费用,而Bucket拥有者仅支付存储费用。当您希望共享数据,但又不希望产生流量费用和请求费用时,您可以开启此功能。 注意事项 本文以华东1(杭州)外网Endpoint为例。如果您希望通过与OSS同地域的其他阿里云产品访问OSS,请使用内网Endpoint。关于OSS支持的R…

    阿里云对象存储 2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。