Hadoop分散処理、6時間から5分に高速化 - Yahoo! Japan

 

Yahoo! JAPAN Tech Blog

1コアあたりの性能向上が緩やかになってきているため、処理速度を向上させるには並列処理へ移行する必要がでている。PCレベルであればマルチコアでの並列化ということになり、もっと大規模でスケーラビリティの高い処理を実現するにはグリッドやクラウドコンピューティングと呼ばれるような分散コンピューティングを実現していく必要がでてくる。

分散コンピューティングはシステムアーキテクチャの設計から実装まで煩雑になると敬遠されがちだが、簡単に実現するための方法がないわけではない。OSSプロダクトではApache Hadoopが代表的な存在だ。Hadoopは大量のデータ処理を分散処理するためのプラットフォーム。Hadoopの流儀にしたがって機能を実装すれば自動的に分散処理を実現できるという優れものだ。

しかし分散コンピューティングというと研究室レベルでの活用とか、GoogleやYahoo!、IBMといった大企業しか使えないのではないかと思われがちだ。そこでYahoo! JAPAN Tech Blog: Hadoopで、かんたん分散処理を紹介したい。Yahoo! Japanでの活用事例を取り上げながらHadoopの活用を紹介している。特にベースとなっているMapReduceモデルをわかりやすく紹介しているところに注目したい。

HadoopではMap関数とReduce関数を実装する。あとはHadoopプラットフォームに放り込めば自動的に設定されたマシン群において分散処理される。処理はMap→Shuffle→Reduceの順に行われる。Mapは入力データの振り分け、Shuffleはデータの整列、Reduceはデータのまとめ上げを担当する。Shuffleはすでに実装されているため、利用者が作るのはMapとReduceだ。

Hadoopで、かんたん分散処理では単語数カウンタを例に処理の様子が紹介されている。「THE END OF MONEY IS THE END OF LOVE」といった文章から単語数をカウントする場合を考えると、次のようにデータがそれぞれから出力されることになる。なおデータは値と鍵の組み合わせとして処理される。

  1. データ: THE END OF MONEY IS THE END OF LOVE
  2. Map: <THE, 1> <END, 1> <OF, 1> <MONEY, 1> <IS, 1> <THE, 1> <END, 1> <OF, 1> <LOVE, 1> 単語にそれぞれ鍵として1を割り当てる
  3. Shuffle: <END, 1> <END, 1> <IS, 1> <LOVE, 1> <MONEY, 1> <OF, 1> <OF, 1> <THE, 1> <THE, 1> 値で整列する
  4. Shuffle: <END, [1, 1]> <IS, 1> <LOVE, 1> <MONEY, 1> <OF, [1,1]> <THE, [1,1]> 同じ値のものをグループ化する
  5. Reduce: <END, 2> <IS, 1> <LOVE, 1> <MONEY, 1> <OF, 2> <THE, 2> 鍵を加算する

Hadoopで、かんたん分散処理はここからがおもしろい。Yahoo! Japan 地域サービス事業部ではHadoopをデータ解析やログ解析、クローラに使っているそうだが、日常業務のちょっとした処理もHadoopでこなしているという。たとえば大規模ファイルからランダムに10,000件のデータを取り出したい場合、Mapで割り当てる鍵をランダムな数値にして、Reduceで値だけ取り出して最初の10,000件のデータただけ取り出せばいいというわけだ。Hadoopが使えるため分散処理が実施できるとこがポイントだ。

Hadoopで、かんたん分散処理ではモデルがシンプルでわかりやすく、さらにMapReduceを組み合わせて複雑な処理が可能であること、必要がなければMapだけ実装すればいいことが説明されている。冒頭ではこれまで1台で6時間6分35秒かかっていたログ集計処理が、Hadoopを使ってマスタ1台/スレーブ19台の構成に変えて5分34秒で処理が完了するようになった例が紹介されている。



転職ノウハウ

あなたが本領発揮できる仕事を診断
あなたの仕事適性診断

シゴト性格・弱点が20の質問でサクッと分かる!

「仕事辞めたい……」その理由は?
「仕事辞めたい……」その理由は?

71%の人が仕事を辞めたいと思った経験あり。その理由と対処法は?

3年後の年収どうなる? 年収予報
3年後の年収どうなる? 年収予報

今の年収は適正? 3年後は? あなたの年収をデータに基づき予報します。

激務な職場を辞めたいが、美女が邪魔して辞められない
激務な職場を辞めたいが、美女が邪魔して辞められない

美人上司と可愛い過ぎる後輩に挟まれるエンジニアの悩み

人気記事

一覧

イチオシ記事

新着記事

山田孝之、映画『ジョジョ』史上最低の殺人鬼役に「たぶん素に近い」
[15:50 9/28] エンタメ
メルセデス・ベンツ、クラス初のオープンモデル「Cクラス カブリオレ」発売
[15:47 9/28] テクノロジー
JPCERT/CC、OpenSSLの脆弱性に注意喚起
[15:46 9/28] 企業IT
トヨタ「C-HR」新型コンパクトSUV、日本仕様の概要を初公開 - 年末に発売へ
[15:42 9/28] ホビー
シスコ、1万円台の無線LAN APなど、「Cisco Start」のラインナップを拡充
[15:40 9/28] 企業IT

求人情報