• 跨集群 distcp命令


    两个集群之间做数据同步,而且两个集群之间的版本不一致,这个时候使用的是hftp协议或者webhdfs协议!

    如果试图在两个运行着不同HDFS版本的集群上使用distcp命令来复制数据并使用hdfs协议,复制作业会失败,因为两个系统版本的RPC是不兼容的。要想弥补这种情况,

    1、使用htfp协议

    >>可以使用基于只读HTTP协议的HTFP文件系统并从源文件系统中读取数据。

    >>这个作业必须运行在目标集群上,进而实现HDFS RPC版本的兼容。使用HFTP协议重复前面的例子:

    需要在目标机器上执行这个命令,distcp src des;这里使用的协议是hftp命令

    hadoop distcp src des

    hadoop distcp  hftp://cdh11:50070/data01/allen/temp/ /data01/allen

    特别要注意这里端口号的指定,hftp默认的端口号是50070,这是由dfs.http.address属性指定的。

    2、使用wehhdfs协议

    使用新出的webhdfs协议(替代hftp)后,对源集群和目标集群均可以使用HTTP协议进行通信,且不会造成任何不兼容的问题。

    hadoop distcp src des

    hadoop distcp webhftp://hadoopcluster1:50070/foo webhdfs://hadoopcluster2:50070/bar

  • 相关阅读:
    CentOS 7 安装java 环境
    CentOS 7 替换网易yum 源
    九度:题目1553:时钟
    Maximum Subarray
    职场细节
    poj2524 Ubiquitous Religions
    九度 1526:朋友圈
    程序载入
    设备管理
    操作系统系列
  • 原文地址:https://www.cnblogs.com/amazement/p/4895205.html
Copyright © 2020-2023  润新知