Hadoop Conf Japan 2009 After Party LT - Hadoop Ruby DSL

2,180 views

Published on

Lightening Talk for my project of Hadoop Ruby DSL.

Published in: Technology, Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,180
On SlideShare
0
From Embeds
0
Number of Embeds
251
Actions
Shares
0
Downloads
26
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Hadoop Conf Japan 2009 After Party LT - Hadoop Ruby DSL

  1. 1. (Hadoop + Ruby DSL) x Hudson = ? 藤川幸一 2009上期未踏本体クリエイター 株式会社シリウステクノロジーズ
  2. 2. 未踏でHadoopやってます
  3. 3. Hadoop は敷居が高い?(と思う人には 高い・・・) そういう人は・・ 1. Mapper とか Reducer とか、何? どう やって書けばいいの? 2. Java で書くの? いろいろ制約があって 難しそう・・・ 3. 実行環境準備するだけで大変そう
  4. 4. そういう人にこそ・・
  5. 5. Ruby で Mapper / Reducer ※でも Hadoop Streaming は使わないよ JRubyを使う Mapper / Reducer からRuby呼び出し 呼び出されたRubyにMRが書ける def map(key, value, output, reporter) # Mapper code end def reduce(key, values, output, reporter) # Reducer code end
  6. 6. さらに MR も意識せずに~DSL ある特定の分野(ログ分析とか)だと、Mapper / Reducerに分解 する部分がわりと明確 最初から分解してその指示をメタな言語(DSL)にすれば MapReduceを意識せずHadoopで処理ができる? use 'LogAnalysis' data 'apache log on test1' do from 'apachlog/inputs' to 'apachlog/outputs' each_line do pattern /(.*) (.*) (.*) [(.*)] (".*") (d*) (d*)/ column_name 'remote_host', 'pass', 'user', 'access_date', 'request', 'status', 'bytes' topic 'which users?', :label => 'user' do count_uniq column[:user] end topic 'access date by monthly' do select_date column[:access_date], BY_MONTHLY count column[:access_date] end ・・・
  7. 7. Hudsonで実行分散環境を簡単に準備 HudsonはOSS分散ビルドツール→タスク分散が得意 メインコミッターのkohsuke(Sunの川口耕介さん)がHudsonのプラグイン としてHadoopを使えるように→簡単にHadoopインストール Hudsonのスレーブを増やすとHadoopのノードとして使える
  8. 8. まだまだプロジェクトはこれからです! 興味がある方はご一報を! ありがとうございました。 Twitter: @fujibee

×