我刚刚开始探索大数据技术和 Hadoop 框架。
但是,对如此多的生态系统组件和框架感到困惑。您能否建议从一个结构化的开始开始学习?
我的意思是应该关注哪个生态系统组成部分?任何特别或全部?
非常感谢帮助!
兰特
最佳答案
几个月前我在 Quora 上写了这个答案。希望这会有所帮助:
<强>1。观看一些有关 Hadoop 的介绍性视频 在直接开始使用 hadoop 之前,对 hadoop 有一些高级的了解非常重要。这些介绍性视频将有助于理解 Hadoop 的范围和可以应用它的用例。网上有很多可用资源,浏览任何视频都将大有裨益。
<强>2。了解 MapReduce 帮助我的第二件事是了解 Map Reduce 是什么以及它是如何工作的。本文对此进行了很好的解释:http://static.googleusercontent ....
这里有另一个不错的教程:http://ksat.me/map-reduce-a-real ...
对于第 1 点和第 2 点,完成第一周视频讲座的前四节课。分布式计算和 map reduce 的整个概念在这里得到了很好的解释。 https://class.coursera.org/mmds-001/lecture
<强>3。 Cloudera VM 入门 一旦了解了 Hadoop 的基础知识,就可以下载 cloudera 提供的 VM 并开始在其上运行一些 hadoop 命令。您可以从此链接下载 VM:http://www.cloudera.com/content/ ...
最好熟悉 VM 上的基本 Hadoop 命令并了解它的工作原理。
<强>4。设置独立/伪分布式 Hadoop 一旦您熟悉使用 VM 的 Hadoop,我建议您在您的机器上设置您自己的独立 Hadoop。安装步骤在 Michael G. Noll 的博客上有很好的解释:在 Ubuntu Linux 上运行 Hadoop(单节点集群)- Michael G. Noll
<强>5。了解 Hadoop 生态系统 熟悉 Hadoop 生态系统中的其他组件(如 Apache Pig、Hive、Hbase、Flume-NG、Hue 等)会很好。所有这些都有不同的用途,了解所有这些的一些信息将非常有助于构建任何产品hadoop生态系统。您可以在您的机器上轻松安装所有这些并开始使用它们。 Cloudera VM by 已经安装了其中的大部分。
6.编写 Map Reduce 作业 完成第 1-5 步后,我认为编写 Map Reduce 不会是一个挑战。 《权威指南》对此进行了详尽的解释。如果您真的对 MapReduce 很感兴趣,我建议您阅读 Anand Rajaraman、Jure Leskovec 和 Jeffrey D. Ullman 合着的《挖掘海量数据集》一书:斯坦福大学页面
强>强>强>强>强>关于hadoop - 如何开始探索 BigData、Hadoop 及其生态系统组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27126719/
我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div
总的来说,我对ruby还比较陌生,我正在为我正在创建的对象编写一些rspec测试用例。许多测试用例都非常基础,我只是想确保正确填充和返回值。我想知道是否有办法使用循环结构来执行此操作。不必为我要测试的每个方法都设置一个assertEquals。例如:describeitem,"TestingtheItem"doit"willhaveanullvaluetostart"doitem=Item.new#HereIcoulddotheitem.name.shouldbe_nil#thenIcoulddoitem.category.shouldbe_nilendend但我想要一些方法来使用
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
给定这段代码defcreate@upgrades=User.update_all(["role=?","upgraded"],:id=>params[:upgrade])redirect_toadmin_upgrades_path,:notice=>"Successfullyupgradeduser."end我如何在该操作中实际验证它们是否已保存或未重定向到适当的页面和消息? 最佳答案 在Rails3中,update_all不返回任何有意义的信息,除了已更新的记录数(这可能取决于您的DBMS是否返回该信息)。http://ar.ru
我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t
我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚
Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack
在选择我想要运行操作的频率时,唯一的选项是“每天”、“每小时”和“每10分钟”。谢谢!我想为我的Rails3.1应用程序运行调度程序。 最佳答案 这不是一个优雅的解决方案,但您可以安排它每天运行,并在实际开始工作之前检查日期是否为当月的第一天。 关于ruby-如何每月在Heroku运行一次Scheduler插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8692687/
我有一个对象has_many应呈现为xml的子对象。这不是问题。我的问题是我创建了一个Hash包含此数据,就像解析器需要它一样。但是rails自动将整个文件包含在.........我需要摆脱type="array"和我该如何处理?我没有在文档中找到任何内容。 最佳答案 我遇到了同样的问题;这是我的XML:我在用这个:entries.to_xml将散列数据转换为XML,但这会将条目的数据包装到中所以我修改了:entries.to_xml(root:"Contacts")但这仍然将转换后的XML包装在“联系人”中,将我的XML代码修改为
我有一大串格式化数据(例如JSON),我想使用Psychinruby同时保留格式转储到YAML。基本上,我希望JSON使用literalstyle出现在YAML中:---json:|{"page":1,"results":["item","another"],"total_pages":0}但是,当我使用YAML.dump时,它不使用文字样式。我得到这样的东西:---json:!"{\n\"page\":1,\n\"results\":[\n\"item\",\"another\"\n],\n\"total_pages\":0\n}\n"我如何告诉Psych以想要的样式转储标量?解