23
Super HadoopRock R&D 平間 大輔

B33 Super HadoopでRockなR&D by 平間大輔

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: B33 Super HadoopでRockなR&D by 平間大輔

Super Hadoopで Rock な R&D

平間 大輔

Page 2: B33 Super HadoopでRockなR&D by 平間大輔

免責事項

• 本スライドに登場する社名、商品名、製品等の名称及びロゴは、関係各社及び関係団体等の商標または登録商標です。

• 本スライドで主張される内容は平間個人の見解であり、インサイトテクノロジー、およびその他の会社・団体を代表する意見ではありません。

Page 3: B33 Super HadoopでRockなR&D by 平間大輔

時代はBig Data! 主役はHadoop!

Page 4: B33 Super HadoopでRockなR&D by 平間大輔

データは貯めるもの?使うもの?

R&Dは高速なHadoopクラスタで!

貯め込むだけなら何とかなるが… 使えなければ役に立たない!

遅いクラスタ

Page 5: B33 Super HadoopでRockなR&D by 平間大輔

RockなHadoopクラスタ: Super Hadoop!

x 48

40Gbps

Page 6: B33 Super HadoopでRockなR&D by 平間大輔

DEMO: Hadoop Terasort

50GB

50GB

I/O待ちがほぼないことに注目!

Page 7: B33 Super HadoopでRockなR&D by 平間大輔

MapReduceでRockにR&D!

Page 8: B33 Super HadoopでRockなR&D by 平間大輔

ツイートされた単語を数えて2012年9月の世相を斬る!

1億1400万件 260GB (2012年9月分の1%)

Page 9: B33 Super HadoopでRockなR&D by 平間大輔

取得したJSONデータはこんな感じ(これで1行です)

{"text":"¥u81ea¥u5206¥u304c¥u4fe1¥u3058¥u3089¥u308c¥u308b¥u3060¥u3051¥u3058¥u3083¥u306a¥u304f¥u3066¥u81ea¥u5206¥u306e¥u3053¥u3068¥u3092¥u4fe1¥u3058¥u3066¥u304f¥u308c¥u308b¥u4eba¥u305f¥u3061¥u306e¥u3053¥u3068¥u306f¥u5927¥u5207¥u306b¥u3002¥/¥u4ec1","contributors":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"retweet_count":0,"in_reply_to_screen_name":null,"in_reply_to_user_id_str":null,"retweeted":false,"source":"web","entities":{"urls":[],"hashtags":[],"user_mentions":[]},"place":null,"in_reply_to_status_id":null,"id_str":"241415049216925697","coordinates":null,"user":{"statuses_count":1432,"geo_enabled":false,"profile_link_color":"0084B4","verified":false,"profile_background_image_url_https":"https:¥/¥/si0.twimg.com¥/profile_background_images¥/603245248¥/obluhsv93jc29erghpt1.gif","default_profile_image":false,"friends_count":378,"profile_background_color":"C0DEED","location":"","is_translator":false,"profile_background_tile":true,"favourites_count":0,"description":"¥u5175¥u5eabJK2¥u3002¥u5143¥u7532¥u6b66¥u3002¥r¥n¥u3059¥u304d¥u306a¥u3082¥u306e¥u3002¥u4ec1¥u304f¥u3093¥/¥u4e80¥u3061¥u3083¥u3093¥/KAT-TUN¥/¥u3084¥u307e¥u3074¥u30fc¥/¥u4eae¥u3061¥u3083¥u3093¥/NEWS¥/¥u9234¥u6728¥u3048¥u307f¥/¥u5927¥u77f3¥u53c2¥u6708¥/Taylor¥u30fbMomsen¥/Taylor¥u30fbSwift¥/Bruno¥u30fbMars¥/¥u52a0¥u85e4¥u30df¥u30ea¥u30e4¥/¥u963f¥u90e8¥u771f¥u592e¥r¥n¥u30a2¥u30e1¥u30d6¥u30ed¥u3057¥u3066¥u308b¥u3002¥u3075¥u3049¥u308d¥u30fc¥u307f¥u30fc¥u3002:) hyphen¥u3001¥uff71¥uff76¥uff86¥uff7c¥uff6c¥uff70¥u3001¥uff81¥uff6c¥uff9d¥uff76¥uff8a¥uff9f¥uff70¥uff85¥u304b¥u3082¥u3093¥u304b¥u3082¥u3093¥u2606¥u5f61","profile_sidebar_fill_color":"DDEEF6","follow_request_sent":null,"contributors_enabled":false,"lang":"ja","profile_sidebar_border_color":"C0DEED","profile_image_url_https":"https:¥/¥/si0.twimg.com¥/profile_images¥/2393527472¥/expe7e9aiw04iu3iijb0_normal.jpeg","screen_name":"manatsu5","id_str":"585589997","listed_count":3,"protected":false,"show_all_inline_media":false,"following":null,"notifications":null,"profile_use_background_image":true,"followers_count":315,"profile_image_url":"http:¥/¥/a0.twimg.com¥/profile_images¥/2393527472¥/expe7e9aiw04iu3iijb0_normal.jpeg","name":"ma-natsu","default_profile":false,"created_at":"Sun May 20 11:25:20 +0000 2012","profile_text_color":"333333","id":585589997,"profile_background_image_url":"http:¥/¥/a0.twimg.com¥/profile_background_images¥/603245248¥/obluhsv93jc29erghpt1.gif","time_zone":null,"utc_offset":null,"url":"http:¥/¥/ameblo.jp¥/kaaaaaat-tun6¥/"},"favorited":false,"id":241415049216925697,"created_at":"Fri Aug 31 06:00:07 +0000 2012","geo":null,"truncated":false}

Page 10: B33 Super HadoopでRockなR&D by 平間大輔

最初はツイート内の単語を数えてみよう

Key: 123456 value:{"text":" ¥u543e¥u8f29¥u306f…}

“吾輩は猫である。” {“吾輩”,”は”,”猫”,”で”,”ある”,”。”}

key:“吾輩” value:1 key:”猫” value:1 key:”ある” value:1 Map

key:”ある” value:{1,1,1,3,2,1,1} key:“吾輩” value:{1,2,1} key:”猫” value:{1,3,2,1,1,5,2} Shuffle

key:10 value:”ある” key:4 value:“吾輩” key:15 value:”猫” Reduce

JSONIC

lucene-gosen

Page 11: B33 Super HadoopでRockなR&D by 平間大輔

形態素解析とは

君の心が打ち砕かれたなら、それは強くなるチャンス。

君 名詞-代名詞

の 助詞-連体化

心 名詞-一般

が 助詞-格助詞

打ち砕か 動詞-自立

れ 動詞-接尾

た 助動詞

なら 助動詞

、 記号-読点

それ 名詞-代名詞

は 助詞-係助詞

強く 形容詞-自立

なる 動詞-自立

チャンス 名詞-一般

。 記号-句点

Page 12: B33 Super HadoopでRockなR&D by 平間大輔

その他もろもろ工夫

Page 13: B33 Super HadoopでRockなR&D by 平間大輔

やってみた結果

Page 14: B33 Super HadoopでRockなR&D by 平間大輔

MapReduceはソートの扱いが苦手

key:4 value:“吾輩” key:10 value:”ある” key:15 value:”猫”

Reducer1

key:11 value:“ゴミ” key:11 value:”人間” key:13 value:”犬”

Reducer2

Shuffle

key:11 value:“ゴミ” key:10 value:”ある” key:15 value:”猫” key:4 value:“吾輩” key:11 value:”人間” key:13 value:”犬” IntWritable

Page 15: B33 Super HadoopでRockなR&D by 平間大輔

ソート処理を自作すべし!

key:15 value:”猫” key:13 value:”犬” key:11 value:“ゴミ” key:11 value:”人間”

Reducer1

key:10 value:”ある” key:4 value:“吾輩”

Reducer2

Shuffle

key:11 value:“ゴミ” key:10 value:”ある” key:15 value:”猫” key:4 value:“吾輩” key:11 value:”人間” key:13 value:”犬”

並べ替え用の 自作クラスを作成(IntWritableを継承)

HashPartitioner ↓

TotalOrderPartitioner

事前にkeyを サンプリング

Page 16: B33 Super HadoopでRockなR&D by 平間大輔

やってみた結果

Page 17: B33 Super HadoopでRockなR&D by 平間大輔

ハッシュタグを使ってみよう!

{"text":"am_maccer ¥u304c 1¥u6642 ¥u3092¥u304a¥u77e5¥u3089¥u305b¥u3057¥u307e¥u3059¥u3088¥uff01¥u76f8¥u4e92¥u30d5¥u30a9¥u30ed¥u30fc¥u78ba¥u5b9f¥u3067¥u3059¥u3002 #followme #sougo #sougofollow", … "entities":{"urls":[],"hashtags":[{"text":"followme","indices":[37,46]},{"text":"sougo","indices":[47,53]},{"text":"sougofollow","indices":[54,66]}],"user_mentions":[]}, …

吾輩は猫である。 #漱石

結びつきは強いはず!

Page 18: B33 Super HadoopでRockなR&D by 平間大輔

ソート処理をさらに修正

key:{101,13,”食品”} value:”犬” key:{101,11,”食品”} value:“ゴミ” key:{101,11,”食品”} value:”人間”

Reducer1

key:{56,15,”漱石”} value:”猫” key:{56,10,”漱石”} value:”ある” key:{56,4,”漱石”} value:“吾輩”

Reducer2

Shuffle

key:{101,11,”食品”} value:“ゴミ” key:{56,10,”漱石”} value:”ある” key:{56,15,”漱石”} value:”猫” key:{56,4,”漱石”} value:“吾輩” key:{101,11,”食品”} value:”人間” key:{101,13,”食品”} value:”犬”

3項目を使ってソートできる新しいクラスを作成

↓ Key項目として使用

1.ハッシュタグ出現数 2.ハッシュタグ名称 3.ハッシュタグ別の単語数 …の順にソート

Page 19: B33 Super HadoopでRockなR&D by 平間大輔

DEMO: では動かしてみよう!

Page 20: B33 Super HadoopでRockなR&D by 平間大輔

やってみた結果

Page 21: B33 Super HadoopでRockなR&D by 平間大輔

レポート作成は得意な人(ツール)にやらせよう

1億1400万件 260GB 20万件

6MB

Page 22: B33 Super HadoopでRockなR&D by 平間大輔

ヒラマ的結論: 2012年9月は安倍さんとiPhoneの月!

Page 23: B33 Super HadoopでRockなR&D by 平間大輔

おわりに

目指せ、象使い!

おまけ DB Onlineで連載しています。見てね。