Hadoop Conf Japan 2009 After Party LT - Hadoop Ruby DSL
Click here to load reader
-
Upload
koichi-fujikawa -
Category
Technology
-
view
1.855 -
download
2
description
Transcript of Hadoop Conf Japan 2009 After Party LT - Hadoop Ruby DSL
(Hadoop + Ruby DSL)x Hudson = ?
藤川幸一
2009上期未踏本体クリエイター株式会社シリウステクノロジーズ
未踏でHadoopやってます
Hadoop は敷居が高い?(と思う人には高い・・・)
そういう人は・・
1. Mapper とか Reducer とか、何? どうやって書けばいいの?
2. Java で書くの? いろいろ制約があって難しそう・・・
3.実行環境準備するだけで大変そう
そういう人にこそ・・
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
さらに 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・・・
Hudsonで実行分散環境を簡単に準備
HudsonはOSS分散ビルドツール→タスク分散が得意メインコミッターのkohsuke(Sunの川口耕介さん)がHudsonのプラグインとしてHadoopを使えるように→簡単にHadoopインストールHudsonのスレーブを増やすとHadoopのノードとして使える
まだまだプロジェクトはこれからです!興味がある方はご一報を!
ありがとうございました。
Twitter: @fujibee