ruby来写hadoop的mapreduce,我用的方法是rubydoop。怎么配置环境呢:
1.安装rvm:
? ? 不说了 网上有
2.安装ruby:
? ? 由于我以前是做ruby的,所以习惯性的先安装了ruby,起码调试起来比jruby快多了。
3.安装jruby:
? ? rvm install jruby然后等待安装完成
4.给编写mapreduce的目录设置默认的ruby版本和gemset:
? ? 进入到目标目录,执行rvm --create --ruby-version jruby-1.7.19@hadoop
? ? 生成两个文件.ruby-version和.ruby-gemset,一个是定义当前目录的默认ruby版本,一个是定义默认的gemset。
? ? 有了这两个文件已进入这个目录rvm自动帮你切换到jruby@hadoop,这样才能运行rubydoop。
5.编写代码:
? ? 需要说明的是目录结构必须是
? ??├── Gemfile
? ? ├── lib
? ? │ ? ├── word_count_job.rb
? ? │ ? └── word_count.rb
? ? └── Rakefile
? ? 如果没有需要安装的gem,则touch个空的Gemfile就好,所有的代码都放在lib目录下。
6.生成jar包:
? ? rake package
7.用hadoop运行生成的jar包:
? ? hadoop jar build/word_count.jar word_count_job path/to/input path/to/output
如何用ruby来写hadoop的mapreduce并生成jar包
原文:http://wudixiaotie.iteye.com/blog/2228294