さて、ここからはEMRを利用するための環境を整えていきたいと思います。まずはAWSのTOPページの右側から「今すぐサインアップ」をクリックしてAWSアカウントを作成しましょう※25。このAWSアカウントを使ってAWSの提供しているさまざまなサービスを利用することになります。
※25 (参考リンク)アカウント作成の流れ | アマゾン ウェブ サービス(AWS 日本語)
まず、サインアップページが表示されます※26。メールアドレスを入力して、「I am a new user.」にチェックを付けて進んでください。ここで入力したメールアドレスがAWSアカウントのIDとなり、今後ログインするときに必要となります。
※26 すでにアカウントを持っているユーザにとってはログイン画面も兼ねています
パスワードを設定後、今度は住所や電話番号を登録するフローとなります。郵便番号や電話番号は必ずハイフン区切りで入力する必要があるようです。注意点を以下にまとめたので参考にしつつ入力してください。
設定項目 | 説明 | 設定例 | 注意事項 | |
---|---|---|---|---|
Address Line1 | 番地 | 1-1-1 Roppongi | ||
Address Line2 | アパート、 マンション名 |
|||
City | 市区町村 | Minato-ku | ||
State, Province or Region |
都道府県 | Tokyo | ||
Zip or Postal Code | 郵便番号 | 106-0032 | ハイフンを省略しない | |
Country | 国 | Japan | ||
Phone number | 電話番号 | 090-1111-2222 | ハイフンを省略しない | |
次はクレジットカード情報の登録になります。あくまでもAWSのサービスは従量課金制なので利用しなければ課金は発生しませんが、利用する際にはクレジットカード払いとなるためクレジットカード登録は必須となっています。
その後、電話による本人確認が行われます。国と受け取り可能な電話番号を指定して「Call me now」をクリックすると英語で電話がかかってきますが、自動応答の音声案内なので安心してください※27。電話がかかってくると同時に、画面の表示が以下のような状態に変化するはずです。
※27 筆者は焦りましたが
電話に出ると、PIN番号を入力するように指示されるので画面に表示されている4桁のPIN番号をプッシュ入力します。正しく入力できると本人確認が完了し、電話が切れます。これでAWSアカウントの取得は完了です。
さて、AWSの各サービスを利用するためには最初に一度だけ、サービスごとに利用申請が必要です。EMRを使うためにはEC2やS3といったサービスも併せて利用することになるのでそられのサービスも含めて申請が必要となりますが、EMRの申請を行えばそれらもまとめて申請されます。
EMRの利用申請は、EMRのページの右側にある「今すぐ申し込む」をクリックし、AWSアカウントのメールアドレスとパスワードを入力するだけで完了です。忘れずに申請しておきましょう。
前章で素のHadoopを使ったときにはHDFSに対してデータの読み書きを行っていましたが、EMRではファイルシステムとしてHDFSの代わりにS3を利用します。そのため、S3へのデータの読み書きが行える状態にしておく必要があります。
そもそもS3とは容量無制限のストレージであり、ネイティブのAPIやサードパーティーのツールを利用することで、インターネットに接続さえしていればどこからでもデータのアップロードやダウンロードが可能、というストレージサービスです。以下のような特徴を持っています。
料金体系も少し変わっていて、以下のような課金ルールがありデータの転送料金とデータの保持料金とで計算されます。
※28 アメリカ東部(バージニア)の場合であり、データ量に応じて値段は変動します(編注:価格は執筆当時のものです。以下同)
※29 アメリカ東部(バージニア)の場合であり、データ量に応じて値段は変動します
バケットを作成する
S3ではデータの保管場所をバケットと呼びます※30。S3利用時にはまずこのバケットが必要になるので作成してみましょう。
※30 サーバでいうディレクトリのようなものです
AWSの各サービスはAWSコンソールから使う方法とサードパーティー製のツールを利用する方法、あとはAWSのSDKを利用する方法などがありますが、今回はAWSコンソールから利用してみます。AWSコンソールはAWSのサイト上からアクセスできます。サイト右上の「アカウント/コンソール」から「AWS Management Console」を選択してください。
EC2やS3、EMRなど各サービスごとにコンソールが用意されています。画面上にある「Services」タブから利用したいサービスを選択することで切り替えられます。今回はS3のコンソールを開きましょう。ちなみに、左上のオレンジのアイコンをクリックするとコンソール画面を開いたときにどのサービスのものを最初に表示するかを切り替えられます。よく利用するサービスを最初に表示するようにすると素早くアクセスできて便利です。
S3のコンソールから、「Create Bucket」をクリックし、新たにバケットを作成します。バケット名は任意ですがS3内でユニークな名前を付けないといけません※31。今回はsasata299という名前でバケットを作成しました。
※31 つまり早い者勝ちということです
また、利用するリージョンはどこでも良いですが、S3は同じリージョン内では課金が発生しないという特徴を持っているため、EMR利用時と同じリージョンを使うようにすると良いでしょう。ここではUS Standard(アメリカ東部)を選択しました。
作成したバケットの下にはフォルダを作成して階層構造とすることも可能です。今回はEMR利用時のデータの読み込み先として、先ほど作成したsasata299バケットの中にinputフォルダを作ってみました。
AWSコンソール以外からの利用
ここまでAWSコンソールを使ってS3を利用してきましたが、サードパーティー製のツールも利用可能で、有名なものだとこれらが挙げられます。特に、データのやり取りが増えてきたりするといちいちコンソールにアクセスして利用するのは大変なので積極的にこれらのツールを利用すると良いでしょう。
また、処理を自動化したいときにはAWSのSDKを使ってコマンドラインやプログラムからS3を利用することも可能です。そちらもぜひ試してみてください。
Copyright © ITmedia, Inc. All Rights Reserved.