EC2 上的 Hadoop 与 ElasticMapReduce/S3

标签 hadoop hbase

我使用 ElasticMapReduce 有一段时间了。这很方便,但我无法运行 HBase,因为 Hadoop 集群只是暂时可用(我在 HBase and Hadoop 上问过一些相关的问题)。

所以我想尝试在一组 EC2 机器上安装 Hadoop。我知道 Hadoop 有一些与 EC2 相关的目录 - src/contrib/ec2。看起来只需键入命令即可启动 Hadoop 集群,我可以登录到主节点以运行作业等。在尝试这个之前,我想知道任何使用过这个的人的陷阱。谢谢!

最佳答案

事实上,在亚马逊上使用 hadoop 有两种选择——配置您自己的集群或使用 EMR。与此决定正交,您可以使用 HDFS 或 S3 作为文件系统。 这不是短篇小说,但我会尝试强调所有这些选择的一些优点/缺点。
如果您需要每天运行一个/几个作业并且不需要一直使用 hadoop 集群,则可以使用 EMR。在这种情况下,您将数据放入 s3 并可以完全编写该过程的脚本。主要缺点 - 定制、使用第三方库等并不容易。在这种情况下,您还可以节省安装集群的时间。 如果你想调整 hadoop - 你应该安装你自己的集群。
当你的数据已经在 s3 中或者你需要在处理后存储它时 - s3 是一个不错的选择。同时 - 你可能会获得比使用 HDFS 更低的性能。必须说明的是,亚马逊实例的本地存储空间非常小——因此它变得非常昂贵,您应该保持集群运行(并为此付费)以保留此存储空间。
我会告诉你,如果你确实需要 HDFS 及其所有吞吐量,你确实需要在自己的硬件上拥有自己的集群。当你在 Amazon 上工作时——使用 S3 作为你的文件系统是最实用的。

关于EC2 上的 Hadoop 与 ElasticMapReduce/S3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9938643/

相关文章:

java - Hadoop 文档

hadoop - 计算 1 个 MapReduce 中的多个键

Hadoop 生态系统 - 在我的场景中使用什么技术工具组合? (详情见内)

hadoop - HMaster 启动后很快停止

java - 无法使用Java连接到HBase

hadoop - pig 工作总是失败

R Reducer 在 Amazon EMR 中无法正常工作

hadoop - 如何检查HBase中是否已经存在命名空间?

hadoop - 使用MultipleInputs的Hbase MapReduce作业:无法将LongWritable强制转换为ImmutableBytesWritable

hadoop - HBase,Map/Reduce和SequenceFiles:mapred.output.format.class与新的Map API模式不兼容