我正在学习Mapreduce和Hadoop。我知道我可以做一些测试并在单个节点上运行一些样本。但我真的想在真实的分布式环境中做一些练习。所以我想问: 是否有一个网站可以为我提供分布式环境进行实验?
有人告诉我,我可以使用亚马逊网络服务来构建分布式环境。这是真的吗?有人有这样的经历吗?
我想知道你们在工作中使用hadoop之前是怎么学习hadoop的?
谢谢!
答案 0 :(得分:5)
有几个选择:
或者,如果您不想支付EMR的费用,您可以始终在非分布式模式下在本地计算机上设置Hadoop,并按照here所述进行实验。即使它是单节点设置,抽象也会像使用大型集群一样,所以这是一个很好的方法来加快速度,然后当你想要认真时,继续使用EMR或真正的集群。 / p>
答案 1 :(得分:1)
亚马逊提供了free tier,因此您可以启动一些虚拟机并尝试以这种方式进行试验。他们拥有的微实例并不是很强大,但对于小规模测试来说还是很好。
如果足够强大,您还可以在桌面上启动虚拟机。我自己使用VMPlayer完成了这项工作。你可以免费安装任何你喜欢的Linux。 Ubuntu很容易入手。为VM设置网络时,请务必使用桥接网络。这样,每个VM都会在您的网络上获得自己的IP地址,以便它们可以相互通信。
答案 2 :(得分:0)
嗯,这可能不是'100%在线',但应该提供一些非常好的替代方案。
如果您还没准备好为在线群集资源(例如此处提到的EMR解决方案)付费,并且您不想构建自己的群集但是您对单节点设置不满意,则可以尝试构建虚拟群集在足够强大的桌面上。
你需要minimun 3 VM,我更喜欢Ubuntu。 4更好。要查看真正的Hadoop,您需要最少的复制因子3.因此,您需要3个dataNode,3个taskTrackers。那么,你还需要nameNode / JobTracker - 它可能是用于dataNode的节点之一,但我建议使用单独的VM。例如,如果您需要HBase,则需要一个Master和最少3个RegionServer。所以,再次,你需要3个但更好的4个VM,
有一个非常好的免费产品,Cloudera CDH,它是“有点商业化”的Hadoop发行版。他们还拥有GUI和简化安装的经理。顺便说一句,他们甚至准备了演示虚拟机,但我从未使用它们。你可以download everything here。他们还收集了很多关于Hadoop及其环境的资料。
在桌面上使用虚拟机的完全免费解决方案和像EMR这样的付费服务之间的替代方案是,如果您有备用服务器,则构建在一个专用服务器之上的虚拟群集。这就是我个人所做的。一个物理服务器由VmWare免费解决方案,4个虚拟机,1个SSD操作系统和3个“通用”硬盘驱动器提供支持。每个VM都运行Ubuntu 11.04(再次免费)。 Cloudera经理免费版,CDH。所以一切都是免费的,但你需要一些通常作为备用的硬件。你有游乐场。好的,你需要投入时间,但在我看来,你将从这种方法中获得最大的经验。
答案 3 :(得分:0)
虽然我对此知之甚少,但另一个选择可能是Greenplum的分析工作台(1000个节点集群用于测试的Hadoop):http://www.greenplum.com/solutions/analytics-workbench