1TB数据的Hadoop数据复制块大小速率

1TB数据的Hadoop数据复制块大小速率,hadoop,hdfs,Hadoop,Hdfs,我有以下存储大小的7个数据节点: 数据节点1:250gb 数据节点2:250gb 数据节点3:250gb 数据节点4:45gb 数据节点5:250gb 数据节点6:250gb 数据节点7:250gb 在数据节点4上,我在/data上装载了1TB的数据。因此,我在DataNode4上开始了一个put操作(hadoop fs-put/data/user/hadoop user/)。当存储空间耗尽时,它会在其他存储空间较大的数据节点上继续操作,但速度非常慢 现在我的问题是: 有没有办法提高put操

我有以下存储大小的7个数据节点:

  • 数据节点1:250gb
  • 数据节点2:250gb
  • 数据节点3:250gb
  • 数据节点4:45gb
  • 数据节点5:250gb
  • 数据节点6:250gb
  • 数据节点7:250gb
在数据节点4上,我在/data上装载了1TB的数据。因此,我在DataNode4上开始了一个
put
操作(
hadoop fs-put/data/user/hadoop user/
)。当存储空间耗尽时,它会在其他存储空间较大的数据节点上继续操作,但速度非常慢

现在我的问题是:

  • 有没有办法提高
    put
    操作的块大小速率?从中,它表示“DataNode开始接收小部分(4KB)的数据”。这对于1TB的数据来说似乎太小了。有没有办法提高这一点
  • 如果我停止put操作以增加块大小速率(如果有),它会从停止的位置恢复吗
  • 答复:

    • 是-阅读有关
      dfs.stream buffer size
      dfs.bytes per checksum
      dfs.client write packet size
      -这表示数据包本身更大,我会小心这些设置-很可能问题出在其他地方
    • 本机答案是-否-它不会恢复(但请看问题),它不会恢复正在进行的文件,但可能不会覆盖已完全上载的文件
    问题:

    • 您的网络设置是什么
    • 您的复制因素是什么
    • 您的最小复制系数是多少
    • 它是哪个版本的hadoop
    • 速度慢是什么意思
    • 您要写入的数据是单个文件还是多个文件
    • 您可以在多个节点上装载数据吗
    此外:

    • 你可以考虑DISCP并只执行Sun-map的任务-用数据在节点上运行的任务-这给了你更新和重试等(没有尝试过这样的场景本身)