ヤマムギ

growing hard days.

*

Amazon EMR 「Hadoop を使用してビッグデータを分析」チュートリアルをやってみました

      2020/07/25

AWS認定データアナリティクス受験準備の一環で、Amazon EMRのチュートリアルをやってみました。

手順はこちらの「Hadoop を使ってビッグデータを分析する方法 – アマゾン ウェブ サービス (AWS)」です。
所要時間60分らしいです。

実際の手順はこちら「Amazon EMR によるビッグデータ分析入門 – Amazon EMR」です。

S3バケットの作成

適当な名前でバケットを作成して、[フォルダの作成]ボタンでプレフィックスを作成しておくようです。
プレフィックスの事前作成要るのかな??
とりあえず手順通りに進めます。

MyHiveQueryResults というプレフィックスを作成しておきました。

EC2 キーペアの作成

EC2キーペアを作成しました。
環境はMacですので、pemでダウンロード後、chmod 400しておきました。
(結果、このチュートリアルではSSHログインしませんでした)

EMRクラスターを起動

[クラスターの作成]ボタンを押下しました。

(手順はクイックオプションでの作成です。ですが、詳細オプションも見るだけでも見ておくことでEMRで設定できることのイメージがつきやすかったです。)

クラスター名を入力して、キーペアを選択して、[クラスターの作成]ボタンを押下しました。

1つのマスターインスタンスと2つのコアインスタンスができるようです。
インスタンスクラスはm5.xlarge、VPCはでデフォルトですね。
アプリケーションは、Hive 2.3.6, Hue 4.6.0, Mahout 0.13.0, Pig 0.17.0, Tez 0.9.2が選択済みでした。
1つのAZで起動しました。
詳細オプションでインスタンスフリートにすると複数のAZで配置できるようです。

クラスターのステータスが開始中ですが、これが待機中になれば次に進めそうです。

でも、次のステップはセキュリティグループの変更なので、次に進んじゃいます。

セキュリティグループの変更

マスターとコア用にそれぞれ、ElasticMapReduce-master、ElasticMapReduce-slaveが作成されていました。

手順では、SSH 22 ソース 0.0.0.0/0 があるからマイIPに絞るべし、とありますが、SSHのインバウンドルール自体がなかったので新規作成しました。

(このチュートリアルではSSHログインはしませんでした)

Hiveスクリプトを実行してデータを処理する

マスター、コア両方のステータスは、実行中になっていました。
そして、クラスターは待機中なので大丈夫そうですね。次の手順に進みます。

[ステップ] タブで[ステップの追加]ボタンを押下しました。

  • スクリプトS3の場所
    s3://ap-northeast-1.elasticmapreduce.samples/cloudfront/code/Hive_CloudFront.q
  • S3の場所の入力
    s3://ap-northeast-1.elasticmapreduce.samples
  • S3の場所の出力
    s3://emr-hive-demo/MyHiveQueryResults

入力バケットにある、CloudFrontアクセスログを解析して、OSごとの集計を出力するそうです。

出力バケットを見ます。

こんなデータと

こんなデータができてました。

http://ap-northeast-1.elasticmapreduce.samples.s3.amazonaws.com/cloudfront/code/Hive_CloudFront.q

上記URLで、Hive_CloudFront.qをダウンロードできたので、内容を見てみました。

ふむふむ。
これをちょっと変更して、また今度このブログサイトのアクセスログでもやってみよう。

リソース削除

EMRクラスターを選択して[削除]ボタンを押下しました。

マスターノードとコアノードのインスタンスも削除されていきました。

感想

AWSの各サービスのユーザーガイドは、最初にこのようなクイックスタートなチュートリアルがあるものが多いので、まずは動かして、それから詳細な機能確認に進んでいけたりもします。
EMRはHadoopなどを中心としたOSSのマネージドサービスということもあるので、まずそれらが何をするものなのか、EMRを使うことで何が楽になるのか(1つ1つのEC2インスタンスを操作しなくていい、構成しなくていい、などなど)をBlack Beltの資料とかで少し知ってから、このあたりのチュートリアルをやりましたので、理解しやすかったです。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

ad

ad

  関連記事

AWS Lambda(Python3)でSelenium + Chrome Headless + でwebスクレイピングする

インターネット上に公開されている情報をDynamoDBにつっこみたいだけなので、 …

EC2 Amazon LinuxのNginx+RDS MySQLにレンタルWebサーバーからWordPressを移設する(手順整理版)

ブログサイト(WordPress)をレンタルWebサーバーからAWSに移設する事 …

Active Directory認証でAWSマネジメントコンソールにSSO

こちらの2つのサイトを参考にすすめました。 Active Directory資産 …

Amazon CodeCatalystのスペースとプロジェクトを作成してみました

Amazon CodeCatalystはIAMユーザーで操作するのではなく、AW …

AWS Lambda(Python3.7)でPandocを実行する

昨日まで(AWS Batch) 昨日までは、Pandocを実行して、S3バケット …

ヤマムギvol.27 Amazon Route 53プライベートホストゾーンとリゾルバーのデモをしました

今日は『AWS認定資格試験テキスト&問題集AWS認定ソリューションアーキ …

JAWS-UG Osaka 第14回勉強会 「DIY」 〜自社内システムを作る側からの物申す〜に参加、運営、登壇しました

先日、JAWS-UG Osaka 第14回勉強会 「DIY」 〜自社内システムを …

DynamoDB IAMポリシーで特定項目だけを許可する

検証記録です。 対象テーブル 書籍のサンプルで作ったこちらです。 所属バンドの楽 …

再会の日 ~re:Union 2018 Osaka by JAWS-UG~

8/5は大阪でre:Unionでした。 「再会」と名うったこのイベントは、6月に …

CloudFormationドリフト検出

CloudFormationスタックのドリフト検出を確認しました。 CloudF …