请帮助我理解distcp的用法,我们使用的是s3,在一些脚本中,我可以看到它们直接将数据写入s3,在许多情况下将数据写入hdfs,然后使用distcp将数据复制到s3。那么什么时候使用distcp,什么时候可以直接写到云呢?
vsikbqxv1#
首先,您需要非常清楚为什么要使用distcp。distcp主要用于hadoop集群间的传输。假设您有两个远程hadoop集群1在加利福尼亚,另一个在亚利桑那,cluster1是您的主集群,cluster2是您的辅助集群,这意味着您正在cluster1上执行所有处理,并在cluster2上完成处理后将新数据转储到cluster2。在这个场景中,您将把数据从cluster1复制到cluster2,因为这两个集群是不同的,您可以非常快地复制数据,因为它使用Map器并行地复制数据。因此,您可以将distcp看作类似于ftp,ftp用于跨不同服务器的本地数据复制。在您的例子中,我认为您提到的hdfs是另一个hadoop集群,您可以从中将数据复制到awss3,反之亦然。希望能消除你的疑虑
1条答案
按热度按时间vsikbqxv1#
首先,您需要非常清楚为什么要使用distcp。
distcp主要用于hadoop集群间的传输。假设您有两个远程hadoop集群1在加利福尼亚,另一个在亚利桑那,cluster1是您的主集群,cluster2是您的辅助集群,这意味着您正在cluster1上执行所有处理,并在cluster2上完成处理后将新数据转储到cluster2。
在这个场景中,您将把数据从cluster1复制到cluster2,因为这两个集群是不同的,您可以非常快地复制数据,因为它使用Map器并行地复制数据。因此,您可以将distcp看作类似于ftp,ftp用于跨不同服务器的本地数据复制。
在您的例子中,我认为您提到的hdfs是另一个hadoop集群,您可以从中将数据复制到awss3,反之亦然。
希望能消除你的疑虑