我正在学习mapreduce和hadoop。我知道我可以在一个节点上做一些测试和运行一些样本。但是我真的想在一个真正的分布式环境中做一些练习。所以我想问:有没有一个网站可以为我提供一个分布式的实验环境?有人告诉我,我可以使用amazonweb服务来构建一个分布式环境。是真的吗?有人有这样的经历吗?我想知道你们在工作中使用hadoop之前是如何学习的?谢谢您!
ckocjqey1#
amazon提供了一个免费的层,因此您可以启动一些vm并尝试这样做。他们拥有的微示例不是很强大,但是对于小规模的测试来说很好。你也可以在你的桌面上启动虚拟机,如果它足够强大的话。我自己用vmplayer做的。你可以免费安装任何你喜欢的linux版本。ubuntu很容易入门。为虚拟机设置网络时,请确保使用桥接网络。这样,每个虚拟机将在您的网络上获得自己的ip地址,以便它们可以相互通信。
ilmyapht2#
有几个选项:如果您只是想了解map/reduce范式,我建议您看看jsmapreduce。这是直接嵌入在浏览器,你没有什么要安装的,你可以创建真正的Map/减少程序。如果你想特别了解hadoop,amazon有一个叫做elastic map reduce的东西,它本质上是在aws上运行的hadoop,所以这可以让你编写hadoop作业,决定你的集群中需要多少台机器,需要哪种类型的机器,然后运行它,emr会做一切,为你引导机器,运行作业并将结果存储在s3上。我建议您阅读本教程,了解如何在emr上设置作业。记住,emr不是免费的,所以你必须为你的计算资源付费。或者,如果您不想支付emr的费用,您可以始终在本地机器上以非分布式模式设置hadoop,并对其进行实验,如下所述。即使是单节点设置,抽象也会和使用大型集群时一样,因此这是一个很好的方法,可以加快速度,然后在需要认真考虑的时候使用emr或真正的集群。
iezvtpos3#
嗯,这也许不是关于“100%在线”,但应该给一些细节真正好的选择。如果您还没有准备好为在线集群资源付费(比如这里提到的emr解决方案),并且您不喜欢构建自己的集群,但是您不满意单节点设置,那么您可以尝试在功能足够强大的桌面上构建虚拟集群。你需要最少3个虚拟机,我更喜欢ubuntu。4号更好。要看到真正的hadoop,您需要最小的复制因子3。所以你需要3个数据节点,3个任务跟踪器。嗯,您还需要namenode/jobtracker—它可以是datanode使用的节点之一,但我建议使用单独的vm。例如,如果您需要hbase,那么您还需要一个主服务器和至少3个区域服务器。所以,再说一遍,你需要3个更好的4个vm,有一个很好的免费产品,cloudera cdh,它是hadoop发行版的“有点商业化”。它们还具有带有gui和简化安装的manager。顺便说一句,他们甚至准备了演示虚拟机,但我从来没有使用过他们。你可以在这里下载所有东西。它们还提供了大量关于hadoop及其环境的资料。在桌面上有虚拟机的完全免费解决方案和付费服务(如emr)之间的另一种选择是在一台专用服务器上构建虚拟集群(如果您有备用服务器)。我个人就是这么做的。一个物理服务器由vmware免费解决方案提供支持,4个虚拟机,1个用于操作系统的ssd和3个用于存储的“常规”hdd。每个虚拟机都运行Ubuntu11.04(同样是免费的)。cloudera manager免费版,cdh。所以一切都是免费的,但你需要一些硬件,往往是可用的备用。你还有操场。好吧,你需要投入时间,但在我看来,你会从这种方法中获得最大的经验。
eni9jsuy4#
尽管我对它了解不多,但另一个选择可能是greenplum的分析工作台(1000节点集群,用于测试hadoop):http://www.greenplum.com/solutions/analytics-workbench
4条答案
按热度按时间ckocjqey1#
amazon提供了一个免费的层,因此您可以启动一些vm并尝试这样做。他们拥有的微示例不是很强大,但是对于小规模的测试来说很好。
你也可以在你的桌面上启动虚拟机,如果它足够强大的话。我自己用vmplayer做的。你可以免费安装任何你喜欢的linux版本。ubuntu很容易入门。为虚拟机设置网络时,请确保使用桥接网络。这样,每个虚拟机将在您的网络上获得自己的ip地址,以便它们可以相互通信。
ilmyapht2#
有几个选项:
如果您只是想了解map/reduce范式,我建议您看看jsmapreduce。这是直接嵌入在浏览器,你没有什么要安装的,你可以创建真正的Map/减少程序。
如果你想特别了解hadoop,amazon有一个叫做elastic map reduce的东西,它本质上是在aws上运行的hadoop,所以这可以让你编写hadoop作业,决定你的集群中需要多少台机器,需要哪种类型的机器,然后运行它,emr会做一切,为你引导机器,运行作业并将结果存储在s3上。我建议您阅读本教程,了解如何在emr上设置作业。记住,emr不是免费的,所以你必须为你的计算资源付费。
或者,如果您不想支付emr的费用,您可以始终在本地机器上以非分布式模式设置hadoop,并对其进行实验,如下所述。即使是单节点设置,抽象也会和使用大型集群时一样,因此这是一个很好的方法,可以加快速度,然后在需要认真考虑的时候使用emr或真正的集群。
iezvtpos3#
嗯,这也许不是关于“100%在线”,但应该给一些细节真正好的选择。
如果您还没有准备好为在线集群资源付费(比如这里提到的emr解决方案),并且您不喜欢构建自己的集群,但是您不满意单节点设置,那么您可以尝试在功能足够强大的桌面上构建虚拟集群。
你需要最少3个虚拟机,我更喜欢ubuntu。4号更好。要看到真正的hadoop,您需要最小的复制因子3。所以你需要3个数据节点,3个任务跟踪器。嗯,您还需要namenode/jobtracker—它可以是datanode使用的节点之一,但我建议使用单独的vm。例如,如果您需要hbase,那么您还需要一个主服务器和至少3个区域服务器。所以,再说一遍,你需要3个更好的4个vm,
有一个很好的免费产品,cloudera cdh,它是hadoop发行版的“有点商业化”。它们还具有带有gui和简化安装的manager。顺便说一句,他们甚至准备了演示虚拟机,但我从来没有使用过他们。你可以在这里下载所有东西。它们还提供了大量关于hadoop及其环境的资料。
在桌面上有虚拟机的完全免费解决方案和付费服务(如emr)之间的另一种选择是在一台专用服务器上构建虚拟集群(如果您有备用服务器)。我个人就是这么做的。一个物理服务器由vmware免费解决方案提供支持,4个虚拟机,1个用于操作系统的ssd和3个用于存储的“常规”hdd。每个虚拟机都运行Ubuntu11.04(同样是免费的)。cloudera manager免费版,cdh。所以一切都是免费的,但你需要一些硬件,往往是可用的备用。你还有操场。好吧,你需要投入时间,但在我看来,你会从这种方法中获得最大的经验。
eni9jsuy4#
尽管我对它了解不多,但另一个选择可能是greenplum的分析工作台(1000节点集群,用于测试hadoop):http://www.greenplum.com/solutions/analytics-workbench