SlideShare une entreprise Scribd logo
1  sur  26
Télécharger pour lire hors ligne
1
Big DataとContainerとStream
- AWSでのクラスタ構成とストリーム処理 -
JAWS DAYS 2016, Mar 12
Ryosuke Iwanaga
Solutions Architect, Amazon Web Services Japan
2
Agenda
• Stream processing
• What is Amazon Kinesis?
• Amazon Kinesis Architecture with Containers
3
Key takeaways
• ストリーム処理の基礎
• Amazon Kinesisの概要
• Amazon Kinesisと他サービスの組み合わせ方
4
Stream processing
5
Stream
• Sequence of events/records/data
• Features
– High throughput/volume
– Continuous ingestion
• Use cases
– Log/event collection
– IoT (sensor data, image, etc.)
Ex. 1 KB * 10K record/s * 365 days
= 300 TB / year
Stream => Big Data
6
Stream processing
• Event processing
– Process each event one by one
• Graph for distributed event processing
– Ex. Apache Storm
• Micro-batch processing
– Process a small amount of events in a batch
• Just like a sequence of batch processing
– Ex. Spark Streaming
7
Example: Sliding window
• Sliding window
– Treat events as a window
• Ex. 30 seconds window
– Slide the window
• Ex. Every 20 seconds
• Use cases
– Count last 1 min, every 10
sec, alert abnormality
http://spark.apache.org/docs/latest/streaming-programming-guide.html
• Window length: 3
• The duration of the window
• Sliding interval: 2
• The interval at which the
window operation is performed
8
Key factors for Stream processing
• Isolate ingestion from processing
• Durable storage
• Elastic compute resource
• Reasonable cost
Amazon Kinesis
Container
9
What is Amazon Kinesis?
Amazon Kinesis
Streams
カスタムアプリを自身
で構築して
ストリーミングデータ
を処理・分析する
Amazon Kinesis
Firehose
簡単に大規模の
ストリーミングデータ
をAmazon S3と
Redshiftにロードする
Amazon Kinesis
Analytics
SQLクエリを使って
簡単にストリーミング
データを分析する
Amazon Kinesis: ストリーミングデータを簡単に扱う
ストリームを捕まえ、転送し、処理することを簡単にするAWSサービス
2013/12 2015/10 2015/10
Pre-announce
Amazon Kinesis Streams
自身でストリーミングアプリケーションを構築できる
簡単な管理: 新しいストリームを作り、あなたのデータスループットと規模に
合った必要なキャパシティとパーティションを設定するだけ
リアルタイムアプリを構築: Kinesis Client Libray, Apache Spark/Storm,
AWS Lambda等々を使って、ストリーミングデータ上のレコードをカスタム処理
する
低コスト: どんな規模のワークロードでもコスト効率が良い
クリックストリームデータ
をKinesis Streamsに送信
Kinesis Streamsがクリッ
クストリームデータを保存し、
処理のために提供
Kinesis Client Libraryベースの
カスタムアプリケーションによって、
リアルタイムのコンテンツレコメンド作成
読者はパーソナライズされた
コンテンツの推薦を受けられる
12
Amazon Kinesis Streams: Architecture
• 1 Shardのキャパシティ
– Put: 1K rec/s, 1 MB/s
– Get: 5 TPS, 2 MB/s
– スケールイン/アウトが可能
• いつでも、どの場所からで
もAPIで読み出し可能
– 1つのStreamに対して複数
の処理を行える
k1
v1
k1
v2
k2
v1
k3
v1
AZ AZ AZ
StreamAWSAPIEndpoint
Shard 1
Shard 2
Shard N
k1
v1
k1
v2
k2
v1
k3
v1
AWSAPIEndpoint
保持期間は24時間〜7日間で設定可能
k1
v1
k1
v2
k2
v1
k3
v1
Partition Keyを指定
DataはMax 1MB
13
データ入力 & ストリーム処理
HTTP Post
AWS SDK
LOG4J
Flume
Fluentd
Get* APIs
Kinesis Client
Library
+
Connector Library
Apache Storm
Amazon Elastic
MapReduce
データ入力 データ処理
AWS Mobile
SDK
Apache Spark
Streaming
Amazon Kinesis Firehose
大量のストリームデータをAmazon S3とAmazon Redshiftへ
管理不要: ストリームデータを捉えS3とRedshift、そして他の到達点へ一切アプリ
ケーションを書くことなく、インフラも管理することなく転送できる
データストアへの直接の連携: 簡単な設定だけで、ストリームデータをバッチ処
理し、圧縮し、そして暗号化してデータの到達点へ最短60秒で転送できる
継ぎ目のない弾力性: データのスループットに応じて、何の影響もなく自然
にスケールできる
ストリームデータを捉え
Firehoseに送信する
Firehoseはストリームデータを
継続的にS3とRedshiftに転送する
ストリームデータを
好きなBIツールで分析する
15
Amazon Kinesis Firehose: Demo
~ 60 sec
AWS JavaScript SDK
Amazon
Cognito
AWS
IAM
Amazon Kinesis
Firehose
Amazon
S3
Amazon
Redshift
AWS
Lambda
16
Fluent plugin for Amazon Kinesis
• v1.0.0開発中(今RC)
• 3つのoutputサポート
– Kinesis Streams用
• kinesis_streams
• kinesis_producer
– Kinesis Firehose用
• kinesis_firehose
• GitHub/rubygemsで提供
– Maintainerは@riywo
• リリースに向けて、絶賛
フィードバック募集中!
– Issue下さい!
https://github.com/awslabs/aws-fluent-plugin-kinesis
Amazon Kinesis Analytics
データストリームを標準的なSQLで継続的に分析する
ストリームにSQLを適応: 簡単にデータストリームを接続でき、既存の
SQLのスキルを適応できる
リアルタイムアプリケーションを構築: ストリームのビッグデータに対
して、1秒以下のレイテンシの継続的な処理を実行
弾力的にスケール: データのスループットに合わせて、何の影響もなく
弾力的にスケールする
アナウンスのみ!
Kinesisのストリームや
Firehoseのデリバリストリームを
接続する
データストリームに対して
標準的なSQLを実行する
Kinesis Analyticsは処理したデータを分析
ツールに送信できるので、アラートを作成して
リアルタイムに反応することができる
18
Amazon Kinesis Architecture w/Containers
19
What is "Container"?
• OS-level isolation
• Portability
• Major container engine on AWS
– Docker Engine
– JVM
– AWS Lambda (Node.js/Java/Python)
20
Why is "Container" important for Big Data?
• Scalability
– Easy to scale in/out
• Cost efficiency
– High utilization by multi-tenancy
• Speed of innovation
– Fine-grained architecture / Good abstraction
21
Stream processing with Docker container
• Kinesis Client Library
– Shard treatment
– Failure management
– Multi language
• Runs on Amazon ECS
– Resource Management
– Keep task running
Amazon ECS
Amazon Kinesis
Streams
22
Stream processing with JVM container
• Spark Streaming
– Micro-batch
– w/Spark SQL, ML
• Runs on Amazon EMR
– YARN
– Dynamic Allocation
DStream
RDD@T1 RDD@T2
Amazon Kinesis
Streams
Amazon EMR
23
Stream processing with AWS Lambda
• Lambda function
– Bring your own code
– Invoke per shard
• Runs on AWS Lambda
– Server-less Architecture
– Scale as you want
Amazon Kinesis
Streams
AWS Lambda
24
More Server-less Stream Architecture
• Amazon Kinesis Firehose
– Deliver stream to storage
• Amazon Kinesis Analytics
– Run SQL on stream data
• Without any server
Amazon Kinesis
Analytics
Amazon Kinesis
Firehose
25
Summary
• Amazon Kinesisで安心できるストリーム処理を
– Amazon Kinesis Streamsと、Amazon ECS, Amazon EMR,
AWS Lambda等のコンテナ技術で、自由なストリーム処理
– Amazon Kinesis Firehose, Amazon Kinesis Analyticsで、よくあ
るユースケースをサーバレスに実現
• 使い分けは場合によりけり
– 迷ったら、ぜひAWS JapanのSAまでご相談を!
– → 今日もMeet the SAと称して、終日ブース待機してます!
26

Contenu connexe

Tendances

AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
都元ダイスケ Miyamoto
 

Tendances (20)

成長していくサービスとAWS
成長していくサービスとAWS成長していくサービスとAWS
成長していくサービスとAWS
 
IoTデザインパターン 2015 JAWS沖縄
IoTデザインパターン 2015 JAWS沖縄IoTデザインパターン 2015 JAWS沖縄
IoTデザインパターン 2015 JAWS沖縄
 
モバイル開発を支えるAWS Mobile Services
モバイル開発を支えるAWS Mobile Servicesモバイル開発を支えるAWS Mobile Services
モバイル開発を支えるAWS Mobile Services
 
AWS Blackbelt 2015シリーズ AWS Lambda
AWS Blackbelt 2015シリーズ AWS LambdaAWS Blackbelt 2015シリーズ AWS Lambda
AWS Blackbelt 2015シリーズ AWS Lambda
 
Introducing Serverless Computing (20160802)
Introducing Serverless Computing (20160802)Introducing Serverless Computing (20160802)
Introducing Serverless Computing (20160802)
 
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
 
Serverless Architecture on AWS (20151201版)
Serverless Architecture on AWS (20151201版)Serverless Architecture on AWS (20151201版)
Serverless Architecture on AWS (20151201版)
 
AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化
AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化
AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化
 
SA プライムなう! - AWS IoT とロボットアームでお絵かき
SA プライムなう! - AWS IoT とロボットアームでお絵かきSA プライムなう! - AWS IoT とロボットアームでお絵かき
SA プライムなう! - AWS IoT とロボットアームでお絵かき
 
AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)
 
ログ管理のベストプラクティス
ログ管理のベストプラクティスログ管理のベストプラクティス
ログ管理のベストプラクティス
 
AWS Lambda Update
AWS Lambda UpdateAWS Lambda Update
AWS Lambda Update
 
Serverless Architecture on AWS(20151121版)
Serverless Architecture on AWS(20151121版)Serverless Architecture on AWS(20151121版)
Serverless Architecture on AWS(20151121版)
 
CloudFrontのリアルタイムログをKibanaで可視化しよう
CloudFrontのリアルタイムログをKibanaで可視化しようCloudFrontのリアルタイムログをKibanaで可視化しよう
CloudFrontのリアルタイムログをKibanaで可視化しよう
 
AWS Black Belt Tech シリーズ 2015 - Amazon API Gateway
AWS Black Belt Tech シリーズ 2015 - Amazon API GatewayAWS Black Belt Tech シリーズ 2015 - Amazon API Gateway
AWS Black Belt Tech シリーズ 2015 - Amazon API Gateway
 
Serverless Architecture on AWS(20151023版)
Serverless Architecture on AWS(20151023版)Serverless Architecture on AWS(20151023版)
Serverless Architecture on AWS(20151023版)
 
AWS Black Belt Techシリーズ Amazon Kinesis
AWS Black Belt Techシリーズ  Amazon KinesisAWS Black Belt Techシリーズ  Amazon Kinesis
AWS Black Belt Techシリーズ Amazon Kinesis
 
Amazon Cognito Deep Dive @ JAWS DAYS 2016
Amazon Cognito Deep Dive @ JAWS DAYS 2016Amazon Cognito Deep Dive @ JAWS DAYS 2016
Amazon Cognito Deep Dive @ JAWS DAYS 2016
 
Amazon Elasticsearch Serviceを利用したAWSのログ活用
Amazon Elasticsearch Serviceを利用したAWSのログ活用Amazon Elasticsearch Serviceを利用したAWSのログ活用
Amazon Elasticsearch Serviceを利用したAWSのログ活用
 
Kinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみたKinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみた
 

En vedette

En vedette (8)

Cloud Seminar Sep_2010
Cloud Seminar Sep_2010Cloud Seminar Sep_2010
Cloud Seminar Sep_2010
 
AWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティスAWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティス
 
AWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon KinesisAWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon Kinesis
 
JAWS-UG CLI #22 Amazon Kinesis
JAWS-UG CLI #22 Amazon KinesisJAWS-UG CLI #22 Amazon Kinesis
JAWS-UG CLI #22 Amazon Kinesis
 
AWS Black Belt Techシリーズ Amazon EMR
AWS Black Belt Techシリーズ  Amazon EMRAWS Black Belt Techシリーズ  Amazon EMR
AWS Black Belt Techシリーズ Amazon EMR
 
AWSマネージドサービスをフル活用したヘルスケアIoTプラットフォーム
AWSマネージドサービスをフル活用したヘルスケアIoTプラットフォームAWSマネージドサービスをフル活用したヘルスケアIoTプラットフォーム
AWSマネージドサービスをフル活用したヘルスケアIoTプラットフォーム
 
AWS Black Belt online seminar 2017 Snowball
AWS Black Belt online seminar 2017 SnowballAWS Black Belt online seminar 2017 Snowball
AWS Black Belt online seminar 2017 Snowball
 
AWS Blackbelt 2015シリーズ Amazon Storage Service (S3)
AWS Blackbelt 2015シリーズ Amazon Storage Service (S3)AWS Blackbelt 2015シリーズ Amazon Storage Service (S3)
AWS Blackbelt 2015シリーズ Amazon Storage Service (S3)
 

Similaire à Big DataとContainerとStream - AWSでのクラスタ構成とストリーム処理 -

Amazon Web Services(AWS)とcloudpack について
Amazon Web Services(AWS)とcloudpack についてAmazon Web Services(AWS)とcloudpack について
Amazon Web Services(AWS)とcloudpack について
Hiroyasu Suzuki
 

Similaire à Big DataとContainerとStream - AWSでのクラスタ構成とストリーム処理 - (20)

AWS Black Belt Techシリーズ AWS re:Invent 2014 最新情報のアップデート
AWS Black Belt Techシリーズ  AWS re:Invent 2014 最新情報のアップデートAWS Black Belt Techシリーズ  AWS re:Invent 2014 最新情報のアップデート
AWS Black Belt Techシリーズ AWS re:Invent 2014 最新情報のアップデート
 
Spark Streaming + Amazon Kinesis
Spark Streaming + Amazon KinesisSpark Streaming + Amazon Kinesis
Spark Streaming + Amazon Kinesis
 
AWS初心者向けWebinar AWSでBig Data活用
AWS初心者向けWebinar AWSでBig Data活用AWS初心者向けWebinar AWSでBig Data活用
AWS初心者向けWebinar AWSでBig Data活用
 
Amazon Web Services 最新事例集
Amazon Web Services 最新事例集Amazon Web Services 最新事例集
Amazon Web Services 最新事例集
 
Amazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティスAmazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティス
 
ソリューションセッション#3 ビッグデータの3つのVと4つのプロセスを支えるAWS活用法
ソリューションセッション#3 ビッグデータの3つのVと4つのプロセスを支えるAWS活用法 ソリューションセッション#3 ビッグデータの3つのVと4つのプロセスを支えるAWS活用法
ソリューションセッション#3 ビッグデータの3つのVと4つのプロセスを支えるAWS活用法
 
[要約] Building a Real-Time Bidding Platform on AWS #AWSAdTechJP
[要約] Building a Real-Time Bidding Platform on AWS #AWSAdTechJP[要約] Building a Real-Time Bidding Platform on AWS #AWSAdTechJP
[要約] Building a Real-Time Bidding Platform on AWS #AWSAdTechJP
 
[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS -AWS を活用したログ分析とセキュリティモニ...
[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS  -AWS を活用したログ分析とセキュリティモニ...[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS  -AWS を活用したログ分析とセキュリティモニ...
[Sumo Logic x AWS 共催セミナー_20190829] Sumo Logic on AWS -AWS を活用したログ分析とセキュリティモニ...
 
AWSアップデート2012.12.01(個人開発者向け)+Glacier
AWSアップデート2012.12.01(個人開発者向け)+GlacierAWSアップデート2012.12.01(個人開発者向け)+Glacier
AWSアップデート2012.12.01(個人開発者向け)+Glacier
 
aws mackerel twilio_handson_public
aws mackerel twilio_handson_publicaws mackerel twilio_handson_public
aws mackerel twilio_handson_public
 
Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Kinesis Familyを活用したストリームデータ処理Amazon Kinesis Familyを活用したストリームデータ処理
Amazon Kinesis Familyを活用したストリームデータ処理
 
Game Architecture Trends in Tokyo Kansai Social Game Study#5
Game Architecture Trends in Tokyo  Kansai Social Game Study#5Game Architecture Trends in Tokyo  Kansai Social Game Study#5
Game Architecture Trends in Tokyo Kansai Social Game Study#5
 
Amazon Web Services(AWS)とcloudpack について
Amazon Web Services(AWS)とcloudpack についてAmazon Web Services(AWS)とcloudpack について
Amazon Web Services(AWS)とcloudpack について
 
20190122 AWS Black Belt Online Seminar Amazon Redshift Update
20190122 AWS Black Belt Online Seminar Amazon Redshift Update20190122 AWS Black Belt Online Seminar Amazon Redshift Update
20190122 AWS Black Belt Online Seminar Amazon Redshift Update
 
20200414 Advanced Features in Amazon Elasticsearch Service
20200414 Advanced Features in Amazon Elasticsearch Service20200414 Advanced Features in Amazon Elasticsearch Service
20200414 Advanced Features in Amazon Elasticsearch Service
 
Accelerating AdTech on AWS #AWSAdTechJP
Accelerating AdTech on AWS #AWSAdTechJPAccelerating AdTech on AWS #AWSAdTechJP
Accelerating AdTech on AWS #AWSAdTechJP
 
トレジャーデータ新サービス発表 2013/12/9
トレジャーデータ新サービス発表 2013/12/9トレジャーデータ新サービス発表 2013/12/9
トレジャーデータ新サービス発表 2013/12/9
 
【IVS CTO Night & Day】AWSにおけるビッグデータ活用
【IVS CTO Night & Day】AWSにおけるビッグデータ活用【IVS CTO Night & Day】AWSにおけるビッグデータ活用
【IVS CTO Night & Day】AWSにおけるビッグデータ活用
 
20120409 aws meister-reloaded-dynamo-db
20120409 aws meister-reloaded-dynamo-db20120409 aws meister-reloaded-dynamo-db
20120409 aws meister-reloaded-dynamo-db
 
データレイクを基盤としたAWS上での機械学習サービス構築
データレイクを基盤としたAWS上での機械学習サービス構築データレイクを基盤としたAWS上での機械学習サービス構築
データレイクを基盤としたAWS上での機械学習サービス構築
 

Plus de Amazon Web Services Japan

Plus de Amazon Web Services Japan (20)

202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
 
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
 
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
 
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
 
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
 
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
 
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデートAmazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
 
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
 
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
 
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDD
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
 
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
 
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
 
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
 
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
 

Dernier

Dernier (11)

Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 

Big DataとContainerとStream - AWSでのクラスタ構成とストリーム処理 -

  • 1. 1 Big DataとContainerとStream - AWSでのクラスタ構成とストリーム処理 - JAWS DAYS 2016, Mar 12 Ryosuke Iwanaga Solutions Architect, Amazon Web Services Japan
  • 2. 2 Agenda • Stream processing • What is Amazon Kinesis? • Amazon Kinesis Architecture with Containers
  • 3. 3 Key takeaways • ストリーム処理の基礎 • Amazon Kinesisの概要 • Amazon Kinesisと他サービスの組み合わせ方
  • 5. 5 Stream • Sequence of events/records/data • Features – High throughput/volume – Continuous ingestion • Use cases – Log/event collection – IoT (sensor data, image, etc.) Ex. 1 KB * 10K record/s * 365 days = 300 TB / year Stream => Big Data
  • 6. 6 Stream processing • Event processing – Process each event one by one • Graph for distributed event processing – Ex. Apache Storm • Micro-batch processing – Process a small amount of events in a batch • Just like a sequence of batch processing – Ex. Spark Streaming
  • 7. 7 Example: Sliding window • Sliding window – Treat events as a window • Ex. 30 seconds window – Slide the window • Ex. Every 20 seconds • Use cases – Count last 1 min, every 10 sec, alert abnormality http://spark.apache.org/docs/latest/streaming-programming-guide.html • Window length: 3 • The duration of the window • Sliding interval: 2 • The interval at which the window operation is performed
  • 8. 8 Key factors for Stream processing • Isolate ingestion from processing • Durable storage • Elastic compute resource • Reasonable cost Amazon Kinesis Container
  • 9. 9 What is Amazon Kinesis?
  • 10. Amazon Kinesis Streams カスタムアプリを自身 で構築して ストリーミングデータ を処理・分析する Amazon Kinesis Firehose 簡単に大規模の ストリーミングデータ をAmazon S3と Redshiftにロードする Amazon Kinesis Analytics SQLクエリを使って 簡単にストリーミング データを分析する Amazon Kinesis: ストリーミングデータを簡単に扱う ストリームを捕まえ、転送し、処理することを簡単にするAWSサービス 2013/12 2015/10 2015/10 Pre-announce
  • 11. Amazon Kinesis Streams 自身でストリーミングアプリケーションを構築できる 簡単な管理: 新しいストリームを作り、あなたのデータスループットと規模に 合った必要なキャパシティとパーティションを設定するだけ リアルタイムアプリを構築: Kinesis Client Libray, Apache Spark/Storm, AWS Lambda等々を使って、ストリーミングデータ上のレコードをカスタム処理 する 低コスト: どんな規模のワークロードでもコスト効率が良い クリックストリームデータ をKinesis Streamsに送信 Kinesis Streamsがクリッ クストリームデータを保存し、 処理のために提供 Kinesis Client Libraryベースの カスタムアプリケーションによって、 リアルタイムのコンテンツレコメンド作成 読者はパーソナライズされた コンテンツの推薦を受けられる
  • 12. 12 Amazon Kinesis Streams: Architecture • 1 Shardのキャパシティ – Put: 1K rec/s, 1 MB/s – Get: 5 TPS, 2 MB/s – スケールイン/アウトが可能 • いつでも、どの場所からで もAPIで読み出し可能 – 1つのStreamに対して複数 の処理を行える k1 v1 k1 v2 k2 v1 k3 v1 AZ AZ AZ StreamAWSAPIEndpoint Shard 1 Shard 2 Shard N k1 v1 k1 v2 k2 v1 k3 v1 AWSAPIEndpoint 保持期間は24時間〜7日間で設定可能 k1 v1 k1 v2 k2 v1 k3 v1 Partition Keyを指定 DataはMax 1MB
  • 13. 13 データ入力 & ストリーム処理 HTTP Post AWS SDK LOG4J Flume Fluentd Get* APIs Kinesis Client Library + Connector Library Apache Storm Amazon Elastic MapReduce データ入力 データ処理 AWS Mobile SDK Apache Spark Streaming
  • 14. Amazon Kinesis Firehose 大量のストリームデータをAmazon S3とAmazon Redshiftへ 管理不要: ストリームデータを捉えS3とRedshift、そして他の到達点へ一切アプリ ケーションを書くことなく、インフラも管理することなく転送できる データストアへの直接の連携: 簡単な設定だけで、ストリームデータをバッチ処 理し、圧縮し、そして暗号化してデータの到達点へ最短60秒で転送できる 継ぎ目のない弾力性: データのスループットに応じて、何の影響もなく自然 にスケールできる ストリームデータを捉え Firehoseに送信する Firehoseはストリームデータを 継続的にS3とRedshiftに転送する ストリームデータを 好きなBIツールで分析する
  • 15. 15 Amazon Kinesis Firehose: Demo ~ 60 sec AWS JavaScript SDK Amazon Cognito AWS IAM Amazon Kinesis Firehose Amazon S3 Amazon Redshift AWS Lambda
  • 16. 16 Fluent plugin for Amazon Kinesis • v1.0.0開発中(今RC) • 3つのoutputサポート – Kinesis Streams用 • kinesis_streams • kinesis_producer – Kinesis Firehose用 • kinesis_firehose • GitHub/rubygemsで提供 – Maintainerは@riywo • リリースに向けて、絶賛 フィードバック募集中! – Issue下さい! https://github.com/awslabs/aws-fluent-plugin-kinesis
  • 17. Amazon Kinesis Analytics データストリームを標準的なSQLで継続的に分析する ストリームにSQLを適応: 簡単にデータストリームを接続でき、既存の SQLのスキルを適応できる リアルタイムアプリケーションを構築: ストリームのビッグデータに対 して、1秒以下のレイテンシの継続的な処理を実行 弾力的にスケール: データのスループットに合わせて、何の影響もなく 弾力的にスケールする アナウンスのみ! Kinesisのストリームや Firehoseのデリバリストリームを 接続する データストリームに対して 標準的なSQLを実行する Kinesis Analyticsは処理したデータを分析 ツールに送信できるので、アラートを作成して リアルタイムに反応することができる
  • 19. 19 What is "Container"? • OS-level isolation • Portability • Major container engine on AWS – Docker Engine – JVM – AWS Lambda (Node.js/Java/Python)
  • 20. 20 Why is "Container" important for Big Data? • Scalability – Easy to scale in/out • Cost efficiency – High utilization by multi-tenancy • Speed of innovation – Fine-grained architecture / Good abstraction
  • 21. 21 Stream processing with Docker container • Kinesis Client Library – Shard treatment – Failure management – Multi language • Runs on Amazon ECS – Resource Management – Keep task running Amazon ECS Amazon Kinesis Streams
  • 22. 22 Stream processing with JVM container • Spark Streaming – Micro-batch – w/Spark SQL, ML • Runs on Amazon EMR – YARN – Dynamic Allocation DStream RDD@T1 RDD@T2 Amazon Kinesis Streams Amazon EMR
  • 23. 23 Stream processing with AWS Lambda • Lambda function – Bring your own code – Invoke per shard • Runs on AWS Lambda – Server-less Architecture – Scale as you want Amazon Kinesis Streams AWS Lambda
  • 24. 24 More Server-less Stream Architecture • Amazon Kinesis Firehose – Deliver stream to storage • Amazon Kinesis Analytics – Run SQL on stream data • Without any server Amazon Kinesis Analytics Amazon Kinesis Firehose
  • 25. 25 Summary • Amazon Kinesisで安心できるストリーム処理を – Amazon Kinesis Streamsと、Amazon ECS, Amazon EMR, AWS Lambda等のコンテナ技術で、自由なストリーム処理 – Amazon Kinesis Firehose, Amazon Kinesis Analyticsで、よくあ るユースケースをサーバレスに実現 • 使い分けは場合によりけり – 迷ったら、ぜひAWS JapanのSAまでご相談を! – → 今日もMeet the SAと称して、終日ブース待機してます!
  • 26. 26