SlideShare a Scribd company logo
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

More Related Content

PDF
AWS Lambda Updates
PDF
Serverless Revolution
PDF
Androidを中心に紐解くIoT
PDF
Morning Session - AWS Serverless Ways
PDF
Scale Your Business without Servers
PDF
AWS Lambda のご紹介 2015 JAWS沖縄
PDF
AWS Lambda / Amazon API Gateway Deep Dive
PDF
AWSで実現するクラウドネイティブなアプリ開発のポイント
AWS Lambda Updates
Serverless Revolution
Androidを中心に紐解くIoT
Morning Session - AWS Serverless Ways
Scale Your Business without Servers
AWS Lambda のご紹介 2015 JAWS沖縄
AWS Lambda / Amazon API Gateway Deep Dive
AWSで実現するクラウドネイティブなアプリ開発のポイント

What's hot (20)

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

Viewers also liked (8)

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

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

PDF
Amazon Kinesis Familyを活用したストリームデータ処理
PDF
AWS Black Belt Online Seminar 2017 Amazon Kinesis
PDF
20180328 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
PDF
Kinesis Analyticsの適用できない用途と、Kinesis Firehoseの苦労話
PDF
Spark Streaming + Amazon Kinesis
PPTX
Kinesis Firehoseを使ってみた
PDF
AWS Black Belt Tech シリーズ 2015 - Amazon Kinesis
PDF
Kinesis3 notes
PPTX
Stream processing on AWS
PDF
JAWS-UG CLI専門支部 #74 Amazon Kinesis Firehose 入門
PDF
[AWS re:invent 2013 Report] Amazon Kinesis
PDF
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
PDF
Amazon kinesisで広がるリアルタイムデータプロセッシングとその未来
PDF
AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjp
PDF
Pydata Amazon Kinesisのご紹介
PDF
Pydata Amazon Kinesisのご紹介
PDF
Kinesis→Redshift連携を、KCLからFirehoseに切り替えたお話
PDF
Serverless analytics on aws
PDF
jaws-ug kansai-special_kinesis_20150207
PDF
Amazon Kinesis Analytics によるストリーミングデータのリアルタイム分析
Amazon Kinesis Familyを活用したストリームデータ処理
AWS Black Belt Online Seminar 2017 Amazon Kinesis
20180328 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
Kinesis Analyticsの適用できない用途と、Kinesis Firehoseの苦労話
Spark Streaming + Amazon Kinesis
Kinesis Firehoseを使ってみた
AWS Black Belt Tech シリーズ 2015 - Amazon Kinesis
Kinesis3 notes
Stream processing on AWS
JAWS-UG CLI専門支部 #74 Amazon Kinesis Firehose 入門
[AWS re:invent 2013 Report] Amazon Kinesis
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Amazon kinesisで広がるリアルタイムデータプロセッシングとその未来
AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjp
Pydata Amazon Kinesisのご紹介
Pydata Amazon Kinesisのご紹介
Kinesis→Redshift連携を、KCLからFirehoseに切り替えたお話
Serverless analytics on aws
jaws-ug kansai-special_kinesis_20150207
Amazon Kinesis Analytics によるストリーミングデータのリアルタイム分析

More from Amazon Web Services Japan (20)

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

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