gpt4 book ai didi

hadoop - 从本地加载大文件到HDFS的最佳方法是什么

转载 作者:行者123 更新时间:2023-12-02 21:14:32 24 4
gpt4 key购买 nike

我的目录包含多个文件夹,每个目录中包含N个文件。单个文件大小为15 GB。我不知道将文件从本地复制/移动到HDFS的最佳方法是什么。

最佳答案

有很多方法可以做到这一点(使用传统方法),例如,

  • hdfs dfs -put /path/to/localdir/ hdfs://path/to/hdfsdir
  • hdfs dfs -copyFromLocal /path/to/localdir/ hdfs://path/to/hdfsdir
  • hdfs dfs -moveFromLocal /path/to/localdir/ hdfs://path/to/hdfsdir
  • hadoop distcp file:///path/to/localdir/ hdfs://namenode:port/path/to/hdfsdir

  • 选项1和2在您的情况下相同。复制时间不会有任何差异。

    选项3可能需要更多时间,因为它将数据复制到HDFS文件系统(与 -put相同),然后从本地文件系统中删除该文件。

    选项4是一个棘手的问题。它专为大型集群间/集群内复制而设计。但是,您还可以通过为本地文件URL提供前缀“file://”来对本地文件使用相同的命令。它不是distcp的最佳解决方案,因为该工具旨在并行运行(使用MapReduce),并且文件位于本地,因此无法利用其强度。 (您可以尝试在集群节点上创建安装,这可能会提高distcp的性能)

    关于hadoop - 从本地加载大文件到HDFS的最佳方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39193790/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com