AWS公式トレーニング「Big Data on AWS」受講レポート

2017.02.22

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

2016年12月19日〜21日の日程で、AWSの公式トレーニング「Big Data on AWS」を受講してきました。 AWSのデータ分析で利用できるサービスが網羅的に紹介され、またそれらを組み合わせたデータ分析の実践がハンズオンで学べる、これからAWSでデータ分析を始めたい方に最適なトレーニングとなっていました。

以下トレーニングの詳しい内容についてお伝えしていきます。

トレーニングの概要

「Big Data on AWS」では、AWSクラウドプラットフォームでのビッグデータソリューションについて紹介します。このコースではAmazon Elastic MapReduce(Amazon EMR) 、およびHiveやHueといったHadoopツールの広範なエコシステムを使ってデータを処理する方法について説明します。また、ビッグデータ環境を作成する方法、Amazon DynamoDB、Amazon Redshift、およびAmazon Kinesisとの連携方法、セキュリティやコストの効率化のためのベストプラクティスを活用する方法についても説明します。

AWS トレーニング | Big Data on AWS

トレーニングは3日間あり、内容は大まかに以下の構成になっています。

ビッグデータの概要

  • ビッグデータの定義、ビッグデータ処理のパイプラインとツール
  • データ転送、取り込みのベストプラクティス、など

ビッグデータのストレージソリューション

  • Amazon Simple Storage Service(S3)(以後Amazon S3)
  • Amazon Relational Database Service(RDS)(以後、Amazon RDS)
  • Amazon DynamoDB
  • Amazon Elastic MapReduce(EMR)(以後Amazon EMR)
  • Amazon Elasticsearch Service
  • それぞれのソリューションの特徴とユースケースについて

ストリーミングデータとAmazon Kinesis

  • ストリーミングデータの概念
  • Amazon Kinesisの特徴とユースケースなど

Amazon EMR

  • Apach HadoopとAmazon EMRの概論、Amazon EMRのアーキテクチャ
  • Hadoopプログラミングフレームワーク(Hive、Presto、Pig、Spark)、Amazon EMRのコストやセキュリティ、など

Amazon Redshift

  • DWHとデータベースの比較、DWH設計のアプローチ、列志向データストアの特徴
  • Amazon Redshiftの概論、アーキテクチャ、環境の最適化(分散キー、データ圧縮など)、セキュリティ、など

ビッグデータの可視化

  • 代表的なサードベンダー製の可視化ツール
  • Amazon QuickSight、など

カリキュラムの詳細はAWS トレーニング | Big Data on AWSの「コースの概要」をご覧ください。

対象者

このコースは次のような方を対象としています。

  • データの保存先としてAWSを利用し、AWS上での大規模なデータ処理のために、Amazon EMRやAmazon Kinesisなど様々なAWSサービスをビッグデータパイプラインの構築に活用する方

Amazon Elastic Compute Cloud (EC2) (以後Amazon EC2)やAmazon RDSなどAWSのベーシックなサービスはすでに利用していてこれからデータ分析もAWSでやっていきたいという方向け、AWSのトレーニング群の中では中級者向けのトレーニングになるかと思います。 またオンプレミス環境でApache Hadoopなどを使ったデータ分析の経験があり、Amazon EMRやAmazon RedshiftなどAWSでのデータ分析ソリューションについて学びたい方にもフィットするトレーニングという印象を持ちました。

前提知識

このトレーニングでは、受講する前に次の知識を身につけておくことが推奨されています。

  • Apache HadoopおよびHadoop Distributed File System(HDFS)を含むビッグデータ技術に対する基本的な知識
  • WebベーストレーニングのBig Data Technology Fundamentalsの修了または同等の経験
  • コアAWSサービスおよびパブリッククラウド導入についての実務的知識
  • AWS Techinical Essentials 1AWS実践入門1、コースの修了または同等の経験
  • データウェアハウス、リレーショナルデータベースシステム、およびデータベースの設計についての基本的な知識

AWSに関する基礎知識がある上で、一般的なリレーショナルデータベース(RDBMS)を操作した経験のある方であれば条件を満たしていると思います。 Apache Hadoopについてはトレーニングの中で概論から学べますので、利用経験がなくとも特に問題ないかと思います。

講習実施風景

注:会場、講師やスケジュール配分は、開催日程によって異なる可能性があります。

今回トレーニングの会場となったのは東京、目黒にあるAWSJのオフィスでした。各席には演習を実施する為のノートPCと追加ディスプレイが設置されています。ノートPCは持ち込みも可能となっていました。

IMG_0420

講師はアマゾンウェブサービスジャパン テクニカルトレーナーの鬼形さん、同ソリューションアーキテクトの半場さんの2名体制でした。

IMG_0422
(テクニカルトレーナー 鬼形さん)

IMG_0421
(ソリューションアーキテクト 半場さん)

トレーニングで学べること、役立つ点

ビッグデータの概要

トレーニングは「ビッグデータとは何か?」と、ビッグデータを扱う上でのAWSの優位性や、ビッグデータ処理に利用できるAWSのソリューションを知るところからスタートします。

ビッグデータ処理のパイプラインとAWSソリューション

  • 収集 : Amazon EC2、Amazon Simple Queue Service (SQS) 、Amazon Kinesis Firehose
  • 保存 : Amazon S3、Amazon Kinesis Streams、Amazon RDS、Amazon DynamoDB、AWS IoT
  • 処理と分析 : Amazon EMR、AWS Lambda、Amazon Redshift、Amazon Machine Learning、Amazon ElasticSearch Service
  • 可視化 : Amazon QuickSight、Amazon ElasticSearch Service(Kibana)

AWSにはビッグデータ処理に利用できるソリューションが豊富にあり、分析対象のデータの種類やコストなどに応じて取り得るシステム構成も様々です。 トレーニングではこれらのソリューションをどう組み合わせてデータ処理のパイプラインを構築するか、その原則とベストプラクティスについて学ぶことができます。

ビッグデータのストレージソリューション

「ビッグデータをどこに溜めるか?」、データストレージという切り口でも、そのソリューションは様々です。

ストレージソリューション

  • NoSQLデータストア : Amazon DynamoDB
  • リレーショナルデータベース : Amazon RDS
  • データウェアハウス : Amazon Redshift
  • BLOBストア : Amazon S3
  • Hadoop/HDFS : Amazon EMR
  • 検索エンジン : Amazon ElasticSearch Service

トレーニングではデータの構造、アクセスパターン、コストなどに応じて最適なストレージソリューションを選択するためのノウハウを学ぶことができます。

ストリーミングデータとAmazon Kinesis

クリックストリーム分析、エンゲージメント分析、あるいは不正なボットのモニタリングなど、リアルタイムのデータ分析処理も年々需要が増しています。 トレーニングではAWSでのストリーミングデータ処理の中核ソリューションであるAmazon Kinesisがメイントピックとして取り上げられ、 そのアーキテクチャやAmazon Kinesisを使ったストリームアプリケーションの構築手法について学ぶことができます。

ストリームデータ処理の新しいオプションとして「Amazon Kinesis Firehose」と「Amazon Kinesis Analytics」についても触れられていました。

Amazon EMR

ビッグデータ処理のパイプラインの"処理と分析"を担うソリューションの一つがAmazon EMRです。トレーニングではApache HadoopとAmazon EMRの概論、Amazon EMRの利点と具体的な使用方法について学ぶことができます。

HadoopとAmazon EMRの概論

  • リレーショナルデータベースとApache Hadoopの比較
  • Apache Hadoopの主要コンポーネント
  • Amazon EMRの利点、アーキテクチャ
  • Amazon EMRのデプロイの保護(セキュリティ)

またHive、Spark、Presto、などのApache Hadoopのプログラミングフレームワークについて、それぞれのプログラミングフレームワークの特徴と主なユースケースについても学ぶことができます。 Sparkについては、アーキテクチャやプログラミングモデルについて一歩踏み込んだ解説がなされていました。

Amazon Redshift

Amazon EMRと並び、"処理と分析"を担うAWSソリューションの中核となるのがAmazon Redshiftです。 トレーニングではデータウェアハウスの一般論やユースケースから始まり、Amazon Redshiftの概要や具体的な利用方法について学ぶことができます。

Amazon Redshiftの概論

  • データウェアハウスと従来型のデータベースとの違い
  • 列指向のストレージの特徴
  • Amazon Redshiftの利点、アーキテクチャ
  • Amazon EMRとの比較

Amazon Redshiftで最適なパフォーマンスを得るためには、スキーマ、分散キー、ソートキートなどを適切に設計する必要があります。トレーニングではこれらの設計に関するベストプラクティスを学ぶことができます。

ビッグデータの可視化

トレーニングの最後の章はビッグデータの可視化についてです。今回のトレーニングでは、ソリューションアーキテクトの相澤 恵奏さんによる、Amazon QuickSightにフォーカスした内容での講義となりました。 Amazon QuickSightは2016年11月に正式リリースされた、AWS上のデータを低コストで簡単に可視化することができるBIサービスです。

トレーニングではAmazon QuickSightの特徴やサードベンダー製のBIツールとの比較などについての解説がありました。

ラボ

トレーニングで用意されたラボは以下の7つです。

  • Amazon DynamoDBでのデータの保存とクエリ
  • Amazon EMR : Hiveを使ったサーバーログの処理
  • Amazon EMR : Hadoopストリーミングを使った化学データの処理
  • Amazon EMR : Hueを使ったPigスクリプトの実行
  • Amazon EMR : SparkおよびSpark SQLを使った表のインタラクティブな作成とクエリ
  • ビッグデータでのAmazon Redshiftの使用
  • Webログを取得、格納、処理、および分析するエンドツーエンドの大規模データアプリケーションの構築

最後のラボはテキスト外の特別編で、Amazon Kinesis Firehose、Amazon Kinesis Analytics、Amazon S3、Amazon EMR、Amazon Redshift、Amazon QuickSightを利用してビッグデータを処理するという、ビッグデータ処理のパイプラインを一気通貫で体験できるとても実践的な内容でした。

受講したメンバーの感想

今回は、弊社よりAWSコンサル部の八幡とデータインテグレーション(DI)部の小澤が参加しました。それぞれが「ここがよかった!」と思った点を共有します。

八幡の感想

AWSではビッグデータを扱うためのサービスが数多く存在しますが、様々なデータ分析のニーズに対してどのサービスをどう組み合わせて使うかは悩みどころです。本トレーニングではこれらのAWSサービスの特徴、アーキテクチャ、ユースケース、サービス間の比較を知ることができるので、これからAWSでデータ分析を行いたい方はもちろん、Amazon Redshiftは使っているがAmazon KinesisやAmazon EMRはまだ、、という方にも有意義なトレーニングだと感じました。

またビッグデータ系のサービスは、その機能やユースケースは知っていても分析対象のデータや適度な課題が無いと実際に触って試してみるということが比較的難しいものが多いかと思います。ラボでは、サンプルデータが用意され実践的なシナリオに基づいてAWSを活用したデータ分析を行うことができるので、その点も非常に有意義な経験となりました。

小澤の感想

今回のトレーニングはAmazon EMRの利用方法を身につけることが主軸に置かれつつも、 AWSにある様々なマネージドサービスをフル活用してデータをどのように活用していくかが学べました。

データ分析というと

  • 統計学や機械学習の専門的な知識を持つ研究者
  • 分析環境やシステムの構築を行うシステムエンジニア
  • 分析結果を成果につなげるためのビジネスパーソン

といった役割が必要になるとよく言われますが、特に2つ目にあげた『分析環境やシステムの構築を行うシステムエンジニア』にとってどのような仕組みを構築するべきかの全体像を理解し適切に運用していく方法を理解するのに役立つ内容となっていると感じました。

機械学習やHadoop, DWHといった個々の要素については何ができるか理解したが、 それらをうまく活用するためにどのようにしていけばわからないといった悩みを抱えている場合などでは『まさにこういったことが知りたかった』 という内容になっていると思います。

また、それらを網羅的にマネージドサービスとして提供しているAWSの便利さも改めて実感できる内容となっていました。 現在オンプレで分析基盤環境を構築していてそれをクラウドに移行したいと考えている方にとっては、 『クラウドネイティブにするとはどういうことなの?』というのも併せて理解できる内容にもなっていたと感じます。

今後のトレーニング実施予定

2017年以降のトレーニング開催日程と価格については、コースの説明 - AWS トレーニング | AWSのページから「Big Data on AWS」の「クラスを検索する」をクリックして確認下さい。

演習環境を伴うクラスルームトレーニングですので、各回に定員が設けられています。開催日に近くなると満席になる可能性もありますので、早めのお申込みがおすすめです。

まとめ

AWS公式トレーニング「Big Data on AWS」では、「ビッグデータとは?」から始まり、ビッグデータ処理の考え方やAWSでのビッグデータ処理のパイプラインの構築方法等について具体的なユースケースや実際の事例を通して広範囲に学ぶことができます。

また今回が本トレーニングの初回実施だったこともあり、今回のフィードバックを踏まえてより次回以降にバージョンアップする予定とのことです。

AWSでデータ分析を、とお考えの方はぜひご受講頂くことをお薦めします。