首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将大型数据集放到amazon elastic map reduce上

将大型数据集放到amazon elastic map reduce上
EN

Stack Overflow用户
提问于 2011-04-27 14:04:06
回答 3查看 884关注 0票数 1

我想使用Amazon EMR处理一些大型数据集(25gb+,可以在互联网上下载)。与其将数据集下载到我自己的计算机上,然后重新上传到Amazon上,那么将数据集上传到Amazon上的最佳方法是什么?

我是否要启动一个EC2实例,将数据集(使用wget)从该实例中下载到S3中,然后在运行EMR作业时访问S3?(我以前没有使用过亚马逊的云基础设施,所以我不确定我刚才说的是否有意义。)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-09 10:49:51

我推荐以下几点:

  1. 启动电子病历集群

通过elastic-mapreduce --create --alive --other-options-here

  • log连接到主节点并从那里下载数据

http://blah/data

  • copy wget到HDFS

hadoop fs -copyFromLocal data /data

没有真正的理由将原始数据集放在S3中。如果您想保留结果,可以在关闭集群之前将它们移动到S3中。

如果数据集由多个文件表示,则可以使用集群跨机器并行下载它。如果是这种情况,请让我知道,我将向您介绍它。

垫子

票数 4
EN

Stack Overflow用户

发布于 2011-10-05 05:16:03

如果你刚刚开始并尝试电子病历,我猜你想要这些在s3上,这样你就不需要启动一个交互式的Hadoop会话(而是通过亚马逊网络服务控制台使用电子病历向导)。

最好的方法是在与S3存储桶相同的区域中启动一个微型实例,使用wget下载到该计算机,然后使用类似s3cmd的命令(您可能需要将其安装在实例上)。在Ubuntu上:

代码语言:javascript
复制
wget http://example.com/mydataset dataset
sudo apt-get install s3cmd 
s3cmd --configure
s3cmd put dataset s3://mybucket/

您希望您的实例和s3存储桶在同一地域的原因是为了避免额外的数据传输费用。尽管wget实例的绑定带宽是收费的,但S3的xfer将是免费的。

票数 1
EN

Stack Overflow用户

发布于 2011-09-29 05:44:19

我不确定,但在我看来,hadoop应该能够直接从您的源文件下载文件。

只需输入http://blah/data作为输入,剩下的工作就应该由hadoop完成了。它当然可以和s3一起工作,为什么不能和http一起工作呢?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5800061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档