首页 > 其他分享 >hadoop distcp 参数详解

hadoop distcp 参数详解

时间:2023-05-17 10:24:59浏览次数:55  
标签:文件 启用 指定 hadoop 详解 用于 复制 distcp

distcp 是一个用于数据复制的工具,它可以将数据从一个 Hadoop 集群复制到另一个 Hadoop 集群。

Usage: hadoop distcp [OPTIONS] <srcurl> <desturl>
OPTIONS:
  -p[rbugpcax]                 Preserve status (rbugpcax)
                               r: replication number
                               b: block size
                               u: user
                               g: group
                               p: permission
                               c: checksum type
                               a: ACLs
                               x: xattr
  -i,--ignore-failures         Ignore failures during copy
  -log <logdir>                Write logs to <logdir>/distcp.log
  -m <num_maps>                Maximum number of simultaneous copies
  -bandwidth <bandwidth>       Specify bandwidth to use when copying data
  -update                      Update target files when source is newer
  -overwrite                   Overwrite target files unconditionally
  -delete                      Delete the files existing in the target but not in the source
  -diff <snapshot> <snapshot>  Compute difference between two snapshots
  -skipcrccheck                Skip CRC checking when source and destination checksums exist
  -atomic                      Commit all changes or none
  -filters <filtersfile>       Filter files and directories to be copied
  -mapred <conf>               Use given mapred-site.xml for map-reduce job
  -pb <size-in-bytes>          Size of internal buffer in bytes
  -simulate                    Do everything except actually copying the files
  -async                       Use asynchronous version for file system operations
  -direct                      Use direct read and write
  -mapreduce-job-name <name>   Specify mapreduce job name

以下是 distcp 命令的所有参数说明:

  • srcurl: 指定数据源的 Hadoop URL,例如 hdfs://hostname:port/path/to/dir
  • desturl: 指定目的地的 Hadoop URL,例如 hdfs://hostname:port/path/to/dest.
  • -p: 用于指定需要保留哪些文件属性信息。可选值包括 r (副本数)、b (块大小)、u (用户)、g (用户组)、p (权限)、c (校验码类型)、a (ACL)、x (xattr)。例如,指定 -prug 参数,表示需要保留复制文件的副本数、用户、组和权限信息。
  • -i, --ignore-failures: 用于忽略复制过程中的错误,当出现错误时继续复制其他文件。
  • -log <logdir>: 用于指定日志文件的输出路径。例如,-log /tmp/distcp 指定将日志输出到 /tmp/distcp/distcp.log 文件中。
  • -m <num_maps>: 用于指定并发复制任务数量。可以通过指定大于 1 的值来加快复制速度。默认值为 20。
  • -bandwidth <bandwidth>: 用于限制数据传输的带宽。可以通过指定 来避免过度占用网络带宽。
  • -update: 用于在目标端只更新新的文件和文件夹,避免重复复制已经存在的文件。启用此选项可以加速数据传输。
  • -overwrite: 用于覆盖目标端的文件。启用此选项后,如果目标端存在与源端相同的文件,则会被覆盖。
  • -delete: 用于删除目标端中与源端不同的文件和目录。
  • -diff <snapshot> <snapshot>: 用于计算两个 HDFS 中不同的文件和目录。其中, 为在 Namenode 中创建的快照名称。
  • -skipcrccheck: 用于跳过源和目标的 CRC 检查。启用此选项可以加快复制速度,但会降低数据可靠性。
  • -atomic: 用于在所有的目标端操作完成或者出现错误的情况下进行数据复制。如果出现错误,distcp 会回滚之前的操作。
  • -filters <filtersfile>: 用于指定包含过滤规则的文件路径。过滤器文件是一个文本文件,其中每行包含一个正则表达式或一个文件路径,用于控制复制的文件范围。
  • -mapred <conf>: 用于指定 distcp 使用的 MapReduce 配置文件,如果不指定则使用默认的 Hadoop 配置。可以在此处指定例如 -D mapreduce.job.reduce.slowstart.completedmaps=0.5 等特定的配置选项。
  • -pb <size-in-bytes>: 用于指定内部缓冲区的大小。默认大小为 4 MB。
  • -simulate: 用于模拟复制操作,而不是实际进行复制。如果需要测试 distcp 的性能,可以使用此选项。
  • -async: 用于启用异步文件系统操作。启用此选项可以提高复制效率,但可能会降低数据可靠性。
  • -direct: 用于启用 NIO 直接缓冲模式进行文件 I/O。启用此选项可以提高复制效率。

标签:文件,启用,指定,hadoop,详解,用于,复制,distcp
From: https://www.cnblogs.com/afra17/p/17407704.html

相关文章

  • hadoop中distcp的mapreduce任务中的task0详解及优化
    task0详解distcp是Hadoop中一个用于数据复制的工具,可用于大规模数据复制场景。在distcp执行过程中,会运行多个MapReduce任务,其中第一个任务通常被称为"task0"或"maintask"。task0主要负责以下操作:**1.解析命令行参数并生成distcp配置。**2.预处理数据源列表,对......
  • 爬虫爬取在线小说阅读网站详解
    前言环境:python安装、requests安装、BeautifulSoup安装爬取目标:笔趣看网站的《校花之贴身高手》,以下是第一章链接https://www.biqukan.com/11_11499/4260511.html开始爬取1.打开链接,打开检查窗口通过审查Elements,能定位到小说的文本内容在<divid="content"class="showtxt">......
  • mixin 详解
    mixin是什么?官方解释:混入(mixin)提供了一种非常灵活的方式,来分发Vue组件中的可复用功能。一个混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选项将被“混合”进入该组件本身的选项。理解:mixin对象,可以包含组件内的任意选项,用来提取组件中可复用的功能......
  • Hadoop入门
    2.Hadoop入门1.分布式和集群分布式:多台服务器相互配合完成一件工作(工作内部,各台服务器所完成的子任务不同)集群:多台服务器联合起来独立完成流水线式工作举例:洗衣店洗衣服如果分为四步:放入洗衣机、晾晒衣服、熨衣服、送给客户,每步都分别由不同种类的员工来做,那么这四个员工......
  • 《c++徒步》vs界面详解
    vs2010字符集:多字节字符集和Unicode字符集是不同的字符集标准,主要区别如下:字符编码范围不同:多字节字符集使用单字节或多个字节来表示字符,编码范围较窄,通常只能表示本地语言的字符集。Unicode字符集则是全球通用的字符编码标准,可以同时表示全球范围内的多种语言字符集。字......
  • 【转】Gradle Wrapper 详解
    什么是GradleWrapper关于“什么是GradleWrapper?”这个问题在官网是这么定义的:TherecommendedwaytoexecuteanyGradlebuildiswiththehelpoftheGradleWrapper(inshortjust“Wrapper”).TheWrapperisascriptthatinvokesadeclaredversionofGradl......
  • Android AVD创建及设置中各参数详解
    设置AVD时有些参数比较模糊,特地找了篇文章,大家参考下!本文根据如下的模拟器安装做一些解释:[color=red][b]Name[/b][/color]:自定义虚拟的名称,不能有空格或者其他非法字符,否则不能创建,即CreatAVD不能高亮点击。[color=red][b]Target[/b][/color]:选择要运行的android版本(也可理解......
  • 环状替换法详解
    环状替换法详解给定一个整数数组nums,将数组中的元素向右轮转k个位置,其中k是非负数。链接:https://leetcode.cn/problems/rotate-array示例:输入:nums=[1,2,3,4,5,6,7],k=3输出:[5,6,7,1,2,3,4]解释:向右轮转1步:[7,1,2,3,4,5,6]向右轮转2步:[6,7,1,2,3,4,......
  • Vue跨域详解
    碰到这种问题,其实你的接口已经通了,但是在页面上就是访问不通过。你可以把API请求地址单独拎出来新开个网站打开看请求是否成功,成功,但是你的项目不通。有那么几个可能吧:1、请求头设置错误headers={ 'Content-Type':'application/json'//错误的'......
  • Android AlertDialog 详解
    创建对话框一个对话框一般是一个出现在当前Activity之上的一个小窗口.处于下面的Activity失去焦点,对话框接受所有的用户交互.对话框一般用于提示信息和与当前应用程序直接相关的小功能.AndroidAPI支持下列类型的对话框对象:警告对话框AlertDialog: 一个可以有......