AWSとAmazon EMRを利用してみる:きょうから試せる Hadoop“スモールスタート”ガイド(6)(1/6 ページ)
実際にHadoopで処理を実装していきながら「Hadoopは、誰にだって扱える」を体感しましょう。今回は「AWSとAmazon EMRの利用方法」を解説します。
書籍の中から有用な技術情報をピックアップして紹介する本シリーズ。今回は、秀和システム発行の書籍『Hadoopファーストガイド(2012年9月20日発行)』からの抜粋です。
ご注意:本稿は、著者及び出版社の許可を得て、そのまま転載したものです。このため用字用語の統一ルールなどは@ITのそれとは一致しません。あらかじめご了承ください。
EMRを利用するメリット
Hadoopシステムの構築において、「EMR(Amazon Elastic MapReduce)」を利用するメリットをあらためて考えてみましょう。3つの“ない”が挙げられます。
- 環境構築が必要ない
- 運用が必要ない
- 修正の取り込み、バージョンアップが必要ない
環境構築が必要ない
素のHadoopやCDH、MapRといったものを利用する場合、Javaをインストールして、Hadoopもしくはディストリビューションをインストールし、その後各種設定を適切に行うなど、Hadoopを利用するためにはさまざまな事前準備が必要です。それに対してEMRの場合にはすべてが整った状態で提供されるためHadoopのインストールすら必要ありません。ユーザはAWSのGUIコンソールもしくはコマンドラインからEMRを起動するだけで、裏ではEC2インスタンスが起動し、JavaやHadoopがインストールされ、各種設定も適切に行われ、Hadoopを利用するための環境が瞬時に整うのです。
運用が必要ない
これはEMRがというよりはAWS全体に言えることですが、運用の手間が掛からないということも大きなメリットでしょう。自社でサーバを抱えてHadoopを動かす場合、複数台を運用するため特定のサーバに不具合が出たりHDDが故障したりする可能性はどうしても高くなります。
そういった問題が発生するとその都度対応が必要となりますが、EMRであれば仮にそういった問題が発生したとしてもそのノードを停止して新たに別のノードを立ち上げるだけで解決します。問題が発生した特定のノードを直すのではなく、新しいノードを立ち上げるだけなので短時間で解決できるのが運用面でも助かるところだと思います。
修正の取り込み、バージョンアップが必要ない
これが最も大きなメリットではないでしょうか。やはり日々バグの修正やHadoop自体のアップデートが行われているのですから、それらをきちんと導入してなるべく新しい、安定したHadoop環境を利用していきたいものです。
EMRを利用していれば、修正を取り込んだりHadoop自体のバージョンをアップデートしたりといったことをEMR側で検証して動作が確認できたものを導入してくれるため、ユーザが意識しなくても常に最新の安定した環境を手に入れることが出来ます。Hadoopを触ってデータ解析をしてはいるが、日々の運用やメンテナンスまでは手が回らないという人でも安心して使えるんじゃないでしょうか。
EMRを利用するデメリット
では逆に、EMRを利用する際のデメリットは何なのでしょう。これは以下の2点が挙げられるかと思います。
- コストが掛かる
- チューニングがしにくい
コストが掛かる
まずはコストに関する点です。EMRを利用する場合、AWSで課金が発生するのですがその際にはEC2の利用料金とは別にEMRの利用料金も発生します※24。通常のEC2利用料金に加えてEMR料金が上乗せで掛かってくるため、単純なコストという点では少し高く感じられるかもしれません。
※24 データ量に応じてS3に関しても利用料金が発生します
ただし、そのおかげで修正を取り込んだりHadoop自体のアップデートを行う人件費が削れると考えればあまり問題ではないのではないか、というのが筆者の考えです。自社にそういったエンジニアがいて、Hadoop周りの面倒を十分に見てくれるというのであればEMRを使うのは少し割高かもしれませんが、少人数だったりひとりでHadoopを触っていたりするような場合には人件費が削れるし、本質的な作業に集中できるので良いのではないかと考えています。
チューニングがしにくい
EMRは「このインスタンスタイプだったらこの設定」というようにあらかじめ最適なデフォルト値が設定されています。そのため、特定の利用シーンに合わせてカリカリにチューニングして使うという感じではないかもしれません。
ブートストラップアクションを利用して設定をカスタマイズすることは可能ですが、あくまでもHadoopを気軽に扱えるところに注力しているサービスなので、特定の用途に対して限界まで性能を出し切りたいというような場合には、自社でHadoopクラスタを運用することを検討した方が良いかもしれません。そもそもチューニングしている間もどんどん課金されてしまうので注意が必要です。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- もし、あなたが「“ビッグデータプロジェクト”を任せる。何とかするように」と言われたら
「ビッグデータプロジェクトを始めることになった」ら、具体的に何をするのか。本連載は、「ビッグデータプロジェクトの“進め方”」を業務視点/ビジネス視点の両面から体系的に理解し、具体的に実践していく方のためのナレッジアーカイブです。第1回目は、「ビッグデータとは何か」の基礎と、「ビッグデータ基盤の概要とメリット」を解説します。 - Hadoopは「難しい・遅い・使えない」? 越えられない壁がある理由と打開策を整理する
ブームだったHadoop。でも実際にはアーリーアダプター以外には、扱いにくくて普及が進まないのが現状だ。その課題に幾つかの解決策が出てきた。転換期を迎えるHadoopをめぐる状況を整理しよう。 - いまさら聞けないHadoopとテキストマイニング入門
Hadoopとは何かを解説し、実際にHadoopを使って大規模データを対象にしたテキストマイニングを行います。テキストマイニングを行うサンプルプログラムの作成を通じて、Hadoopの使い方や、どのように活用できるのかを解説します - 欧米の金融業界は今、どうHadoopを活用しているか
Hadoopは、欧米の金融関連サービス業界でどう活用されているか。米Hortonworksの金融サービス業界担当ゼネラルマネージャーへのインタビューで得た情報を、2回に分けてお届けする。今回は金融業界におけるHadoopのユースケースを概観する。