我如何关联 Amazon EC2、S3 和我的 HDFS?

How could i relate Amazon EC2,S3 and my HDFS?

本人是伪分布式学习hadoop,对集群了解不多。因此,当浏览集群时,我发现 S3 是一种数据存储设备。而EC2是一个计算服务,却无法理解它的真正用途。我的 HDFS 可以在 S3 中使用吗?如果是的话,当我学习 hive 时,我遇到了将数据从 HDFS 移动到 S3 的情况,这被称为归档逻辑。

hadoop distcp /data/log_messages/2011/12/02 s3n://ourbucket/logs/2011/12/02

我的 HDFS 登陆 S3 那么它有什么好处?这可能很愚蠢,但如果有人能给我一个对我有帮助的概述。

S3只是存储,不允许计算。您可以将 S3 视为一个可以保存数据的存储桶,并且可以使用 API 从中检索数据。 如果您使用 AWS/EC2,那么您的 hadoop 集群将在 AWS/EC2 上,这与 S3 不同。 HDFS 只是 hadoop 中的一个文件系统,用于最大化 input/output 性能。

您分享的命令是分布式副本。它会将数据从您的 hdfs 复制到 S3。简而言之,EC2 将在 hadoop 环境中将 HDFS 作为默认文件系统,您可以将存档数据或未使用的数据移动到 S3,因为 S3 存储比 EC2 机器便宜。