Movatterモバイル変換
[0]
ホーム
URL:
画像なし
夜間モード
Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Masahiro NAKAYAMA
PDF, PPTX
56,762 views
AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjp
2017-06-30 #ssmjpAWS LambdaとDynamoDBがこんなにツライはずがない
Technology
◦
Read more
69
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 29
2
/ 29
3
/ 29
4
/ 29
5
/ 29
6
/ 29
7
/ 29
8
/ 29
9
/ 29
10
/ 29
11
/ 29
12
/ 29
13
/ 29
14
/ 29
15
/ 29
16
/ 29
17
/ 29
18
/ 29
19
/ 29
20
/ 29
21
/ 29
22
/ 29
23
/ 29
24
/ 29
25
/ 29
26
/ 29
27
/ 29
28
/ 29
29
/ 29
Recommended
PDF
AWS Black Belt Online Seminar AWS Direct Connect
by
Amazon Web Services Japan
PDF
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
by
Amazon Web Services Japan
PDF
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
by
Amazon Web Services Japan
PDF
20190320 AWS Black Belt Online Seminar Amazon EBS
by
Amazon Web Services Japan
PDF
マルチテナント化で知っておきたいデータベースのこと
by
Amazon Web Services Japan
PDF
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
by
Amazon Web Services Japan
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
PPTX
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
PPTX
分散トレーシングAWS:X-Rayとの上手い付き合い方
by
Recruit Lifestyle Co., Ltd.
PDF
AWS Black Belt Online Seminar AWSで実現するDisaster Recovery
by
Amazon Web Services Japan
PDF
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
by
Amazon Web Services Japan
PPTX
AWSで作る分析基盤
by
Yu Otsubo
PDF
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
by
都元ダイスケ Miyamoto
PDF
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
by
Amazon Web Services Japan
PDF
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
by
Masaya Tahara
PDF
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
by
Amazon Web Services Japan
PDF
マイクロサービスに至る歴史とこれから - XP祭り2021
by
Yusuke Suzuki
PDF
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
by
Noritaka Sekiyama
PDF
20191030 AWS Black Belt Online Seminar AWS IoT Analytics Deep Dive
by
Amazon Web Services Japan
PDF
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
by
Amazon Web Services Japan
PDF
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
by
Amazon Web Services Japan
PDF
20190514 AWS Black Belt Online Seminar Amazon API Gateway
by
Amazon Web Services Japan
PDF
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
by
Amazon Web Services Japan
PDF
マイクロサービス 4つの分割アプローチ
by
増田 亨
PDF
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
by
Trainocate Japan, Ltd.
PPTX
ぱぱっと理解するSpring Cloudの基本
by
kazuki kumagai
PPTX
CloudFront経由でのCORS利用
by
Yuta Imai
PDF
マイクロにしすぎた結果がこれだよ!
by
mosa siru
PDF
20201118 AWS Black Belt Online Seminar 形で考えるサーバーレス設計 サーバーレスユースケースパターン解説
by
Amazon Web Services Japan
PDF
浸透するサーバーレス 実際に見るユースケースと実装パターン
by
Amazon Web Services Japan
More Related Content
PDF
AWS Black Belt Online Seminar AWS Direct Connect
by
Amazon Web Services Japan
PDF
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
by
Amazon Web Services Japan
PDF
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
by
Amazon Web Services Japan
PDF
20190320 AWS Black Belt Online Seminar Amazon EBS
by
Amazon Web Services Japan
PDF
マルチテナント化で知っておきたいデータベースのこと
by
Amazon Web Services Japan
PDF
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
by
Amazon Web Services Japan
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
PPTX
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
AWS Black Belt Online Seminar AWS Direct Connect
by
Amazon Web Services Japan
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
by
Amazon Web Services Japan
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
by
Amazon Web Services Japan
20190320 AWS Black Belt Online Seminar Amazon EBS
by
Amazon Web Services Japan
マルチテナント化で知っておきたいデータベースのこと
by
Amazon Web Services Japan
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
by
Amazon Web Services Japan
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
by
Amazon Web Services Japan
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
What's hot
PPTX
分散トレーシングAWS:X-Rayとの上手い付き合い方
by
Recruit Lifestyle Co., Ltd.
PDF
AWS Black Belt Online Seminar AWSで実現するDisaster Recovery
by
Amazon Web Services Japan
PDF
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
by
Amazon Web Services Japan
PPTX
AWSで作る分析基盤
by
Yu Otsubo
PDF
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
by
都元ダイスケ Miyamoto
PDF
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
by
Amazon Web Services Japan
PDF
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
by
Masaya Tahara
PDF
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
by
Amazon Web Services Japan
PDF
マイクロサービスに至る歴史とこれから - XP祭り2021
by
Yusuke Suzuki
PDF
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
by
Noritaka Sekiyama
PDF
20191030 AWS Black Belt Online Seminar AWS IoT Analytics Deep Dive
by
Amazon Web Services Japan
PDF
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
by
Amazon Web Services Japan
PDF
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
by
Amazon Web Services Japan
PDF
20190514 AWS Black Belt Online Seminar Amazon API Gateway
by
Amazon Web Services Japan
PDF
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
by
Amazon Web Services Japan
PDF
マイクロサービス 4つの分割アプローチ
by
増田 亨
PDF
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
by
Trainocate Japan, Ltd.
PPTX
ぱぱっと理解するSpring Cloudの基本
by
kazuki kumagai
PPTX
CloudFront経由でのCORS利用
by
Yuta Imai
PDF
マイクロにしすぎた結果がこれだよ!
by
mosa siru
分散トレーシングAWS:X-Rayとの上手い付き合い方
by
Recruit Lifestyle Co., Ltd.
AWS Black Belt Online Seminar AWSで実現するDisaster Recovery
by
Amazon Web Services Japan
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
by
Amazon Web Services Japan
AWSで作る分析基盤
by
Yu Otsubo
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
by
都元ダイスケ Miyamoto
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
by
Amazon Web Services Japan
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
by
Masaya Tahara
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
by
Amazon Web Services Japan
マイクロサービスに至る歴史とこれから - XP祭り2021
by
Yusuke Suzuki
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
by
Noritaka Sekiyama
20191030 AWS Black Belt Online Seminar AWS IoT Analytics Deep Dive
by
Amazon Web Services Japan
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
by
Amazon Web Services Japan
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
by
Amazon Web Services Japan
20190514 AWS Black Belt Online Seminar Amazon API Gateway
by
Amazon Web Services Japan
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
by
Amazon Web Services Japan
マイクロサービス 4つの分割アプローチ
by
増田 亨
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
by
Trainocate Japan, Ltd.
ぱぱっと理解するSpring Cloudの基本
by
kazuki kumagai
CloudFront経由でのCORS利用
by
Yuta Imai
マイクロにしすぎた結果がこれだよ!
by
mosa siru
Similar to AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjp
PDF
20201118 AWS Black Belt Online Seminar 形で考えるサーバーレス設計 サーバーレスユースケースパターン解説
by
Amazon Web Services Japan
PDF
浸透するサーバーレス 実際に見るユースケースと実装パターン
by
Amazon Web Services Japan
PDF
AWS Black Belt Online Seminar 2017 Amazon Kinesis
by
Amazon Web Services Japan
PDF
20200728 AWS Black Belt Online Seminar What's New in Serverless
by
Amazon Web Services Japan
PDF
Amazon Kinesis Familyを活用したストリームデータ処理
by
Amazon Web Services Japan
PDF
AWS SAMで始めるサーバーレスアプリケーション開発
by
真吾 吉田
PDF
AWS Black Belt Online Seminar 2016 Amazon Kinesis
by
Amazon Web Services Japan
PDF
Serverless services on_aws_dmm_meetup_20170801
by
Amazon Web Services Japan
PDF
Big DataとContainerとStream - AWSでのクラスタ構成とストリーム処理 -
by
Amazon Web Services Japan
PDF
Growing up serverless
by
Amazon Web Services Japan
PPTX
Stream processing on AWS
by
Mitsuharu Hamba
PDF
aws mackerel twilio_handson_public
by
Tomoaki Sakatoku
PDF
Serverless Revolution
by
Keisuke Nishitani
PDF
Androidを中心に紐解くIoT
by
Keisuke Nishitani
PDF
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
by
真吾 吉田
PDF
Serverless Architecture on AWS(20151121版)
by
Keisuke Nishitani
PDF
Serverless Architecture on AWS (20151201版)
by
Keisuke Nishitani
PDF
Serverless analytics on aws
by
Amazon Web Services Japan
PDF
Serverless ArchitectureにおけるNoSQL Services 〜DynamoDBも良いけどSimpleDBも忘れないであげてください!!〜
by
Terui Masashi
PDF
JAWS-UGアーキテクチャ専門支部 ServerlessConfレポート
by
真吾 吉田
20201118 AWS Black Belt Online Seminar 形で考えるサーバーレス設計 サーバーレスユースケースパターン解説
by
Amazon Web Services Japan
浸透するサーバーレス 実際に見るユースケースと実装パターン
by
Amazon Web Services Japan
AWS Black Belt Online Seminar 2017 Amazon Kinesis
by
Amazon Web Services Japan
20200728 AWS Black Belt Online Seminar What's New in Serverless
by
Amazon Web Services Japan
Amazon Kinesis Familyを活用したストリームデータ処理
by
Amazon Web Services Japan
AWS SAMで始めるサーバーレスアプリケーション開発
by
真吾 吉田
AWS Black Belt Online Seminar 2016 Amazon Kinesis
by
Amazon Web Services Japan
Serverless services on_aws_dmm_meetup_20170801
by
Amazon Web Services Japan
Big DataとContainerとStream - AWSでのクラスタ構成とストリーム処理 -
by
Amazon Web Services Japan
Growing up serverless
by
Amazon Web Services Japan
Stream processing on AWS
by
Mitsuharu Hamba
aws mackerel twilio_handson_public
by
Tomoaki Sakatoku
Serverless Revolution
by
Keisuke Nishitani
Androidを中心に紐解くIoT
by
Keisuke Nishitani
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
by
真吾 吉田
Serverless Architecture on AWS(20151121版)
by
Keisuke Nishitani
Serverless Architecture on AWS (20151201版)
by
Keisuke Nishitani
Serverless analytics on aws
by
Amazon Web Services Japan
Serverless ArchitectureにおけるNoSQL Services 〜DynamoDBも良いけどSimpleDBも忘れないであげてください!!〜
by
Terui Masashi
JAWS-UGアーキテクチャ専門支部 ServerlessConfレポート
by
真吾 吉田
More from Masahiro NAKAYAMA
PDF
BluetoothメッシュによるIoTシステムを支えるサーバーレス技術 #serverlesstokyo
by
Masahiro NAKAYAMA
PDF
IoT(Bluetooth mesh) × サーバーレス
by
Masahiro NAKAYAMA
PDF
クラウド時代のものづくり(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
by
Masahiro NAKAYAMA
PDF
サーバーレス時代の システム設計ワークショップ
by
Masahiro NAKAYAMA
PDF
Serverless book
by
Masahiro NAKAYAMA
PPTX
技術系同人誌を書こう #ssmjp
by
Masahiro NAKAYAMA
PDF
Serverless Architecture Overview #cdevc
by
Masahiro NAKAYAMA
PDF
FaaSのインターフェースに見るサーバーレス #serverlessconf #serverlesstokyo
by
Masahiro NAKAYAMA
PDF
「サーバレスの薄い本」からの1年 #serverlesstokyo
by
Masahiro NAKAYAMA
PDF
クラウドでハンズオンする話 #ssmjp
by
Masahiro NAKAYAMA
PDF
めもおきば新刊のお知らせ サーバーレスでHelloWorldする25の方法 #ssmjp
by
Masahiro NAKAYAMA
PDF
クラウドではじめるリアルタイムデータ分析 #seccamp
by
Masahiro NAKAYAMA
PDF
クラウド時代における分散Webシステムの構成とスケーリング #seccamp
by
Masahiro NAKAYAMA
PDF
ハッカソンについて(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
by
Masahiro NAKAYAMA
PDF
IoT時代のセキュアなクラウドインフラ構築術 #seccamp
by
Masahiro NAKAYAMA
PDF
イントロダクション(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
by
Masahiro NAKAYAMA
PPTX
SORACOMでデータ上げてクラウドで分析・可視化するハンズオン #SecHack365
by
Masahiro NAKAYAMA
PDF
細かすぎて伝わらないSORACOM Funnelのオプション紹介 #soracomug
by
Masahiro NAKAYAMA
PDF
#ssmjp 2018/12 技術系同人誌を手に入れよう
by
Masahiro NAKAYAMA
PDF
#ServerlessDays Tokyo 2019 「サーバーレス」な同人誌の紹介
by
Masahiro NAKAYAMA
BluetoothメッシュによるIoTシステムを支えるサーバーレス技術 #serverlesstokyo
by
Masahiro NAKAYAMA
IoT(Bluetooth mesh) × サーバーレス
by
Masahiro NAKAYAMA
クラウド時代のものづくり(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
by
Masahiro NAKAYAMA
サーバーレス時代の システム設計ワークショップ
by
Masahiro NAKAYAMA
Serverless book
by
Masahiro NAKAYAMA
技術系同人誌を書こう #ssmjp
by
Masahiro NAKAYAMA
Serverless Architecture Overview #cdevc
by
Masahiro NAKAYAMA
FaaSのインターフェースに見るサーバーレス #serverlessconf #serverlesstokyo
by
Masahiro NAKAYAMA
「サーバレスの薄い本」からの1年 #serverlesstokyo
by
Masahiro NAKAYAMA
クラウドでハンズオンする話 #ssmjp
by
Masahiro NAKAYAMA
めもおきば新刊のお知らせ サーバーレスでHelloWorldする25の方法 #ssmjp
by
Masahiro NAKAYAMA
クラウドではじめるリアルタイムデータ分析 #seccamp
by
Masahiro NAKAYAMA
クラウド時代における分散Webシステムの構成とスケーリング #seccamp
by
Masahiro NAKAYAMA
ハッカソンについて(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
by
Masahiro NAKAYAMA
IoT時代のセキュアなクラウドインフラ構築術 #seccamp
by
Masahiro NAKAYAMA
イントロダクション(分散アーキテクチャ時代におけるWebシステムの開発と運用) #seccamp
by
Masahiro NAKAYAMA
SORACOMでデータ上げてクラウドで分析・可視化するハンズオン #SecHack365
by
Masahiro NAKAYAMA
細かすぎて伝わらないSORACOM Funnelのオプション紹介 #soracomug
by
Masahiro NAKAYAMA
#ssmjp 2018/12 技術系同人誌を手に入れよう
by
Masahiro NAKAYAMA
#ServerlessDays Tokyo 2019 「サーバーレス」な同人誌の紹介
by
Masahiro NAKAYAMA
AWS LambdaとDynamoDBがこんなにツライはずがない #ssmjp
1.
AWS LambdaとDynamoDBがこんなにツライはずがないAki@nekoruri2017-06-30 #ssmjp
2.
時はまさにサーバーレス時代!• 「サーバーレス」の定義の話、まだ要ります?
3.
サーバーレスアーキテクチャ #とは• 視点1:3種類の「サーバ」を捨てていく1.
自分で管理する物理的・仮想的な「サーバ」を捨てて、上の「機能」だけを利用する2. プロビジョニング単位としての「サーバ」を捨てて、確保サーバ数から消費したリソース量への転換3. 処理全体に責任を持つ「指揮者としてのサーバ」を捨てて、リアクティブな非同期メッセージングでシステムを構成• 視点2:クラウドが提供する「ありもの」を最大限に活用する
4.
続きは書籍で!• SoftwareDesign 2016/04号•
電子版が技評で買えますhttps://gihyo.jp/dp/ebook/2017/978-4-7741-8409-8• サーバーレスの薄い本• 電子書籍版https://gumroad.com/l/memotr201608• ダイジェストhttps://www.slideshare.net/nekoruri/20161109-serverless-meetup
5.
サーバーレス三種の神器• サーバーレスにシステムをつくるために必要なもの• 勝手にスケールするデータストア•
Amazon DynamoDB• Amazon S3• 勝手にスケールするソフトウェア実行環境• AWS Lambda• (クライアント側ブラウザ上で動くJavaScript)• それらをつなげる枠組み• Amazon Kinesis Streams• Amazon Simple Queue Service(SQS)• AWS Step Functions• Amazon API Gateway
6.
サーバーレス三種の神器• サーバーレスにシステムをつくるために必要なもの• 勝手にスケールするデータストア•
Amazon DynamoDB• Amazon S3• 勝手にスケールするソフトウェア実行環境• AWS Lambda• (クライアント側ブラウザ上で動くJavaScript)• それらをつなげる枠組み• Amazon Kinesis Streams• Amazon Simple Queue Service(SQS)• AWS Step Functions• Amazon API Gateway
7.
背景某社のIoTっぽいデータ収集のしくみ• BLEメッシュ ←
センサー情報↓• SORACOM Funnel↓• Kinesis Streams↓• AWS Lambda↓• DynamoDB ⇒ 収集したデータの活用♥
8.
背景サーバーレス環境の構築とデプロイ• Terraform• システム全体をTerraformで一括構築•
AWS Lambdaの関数定義までは行い、ダミーZIP食わせておく• memory_sizeとかは初期値のみに使いignoreしておく• Apex• AWS Lambdaを関数単位でデプロイ(apex -e ENV deploy)• ログとかも見られる(apex -e ENV logs -f )• 実際のmemory_sizeとかはこちらで管理・設定• 全部まるっとGitで管理
9.
サーバーレスあるある選手権• ひたすら「つらい」話をしていきます。• あんまりAWSに詳しくない人ごめんなさい。
10.
AWS Lambdaログ• AWS
Lambdaでログを保存(例:console.log(“message”))• CloudWatch Logsに保存されて、API経由で閲覧できる• 同期実行するとリアルタイムでも見られる(が今回は不可)• Apex経由で-fで追いかけていると遅れる• どっかでバッファリングされているっぽい?• 昔のログを掘ろうとすると結構面倒• 出力先Log Stream(ファイル名)が不定(=FaaSの内部構造の引きずられている)• ログのチャンネルが一つしかない• 別にアプリケーション固有ログ用のキュー持つ?面倒……
11.
AWS Lambda確保メモリサイズの調整• あらかじめ128MB~1.5GBの範囲で64MB単位で指定•
それを超えると死ぬ• 実行時のCPU割当時間も、これに比例する• 右から左に流すだけで128MBで十分だろ’`,、 ( ´∀`) ‘`,、→ CPU性能足りなくて実行時間がうなぎ登り• ストリーミング処理だからと実行時間を最適化しようとすると職人芸• 実行ごとの消費メモリ量・実行時間はログに出る• というか消費メモリ量はログにしか出ない(CloudWatchメトリクスに出ない)• ログにカスタムメトリクス出してDatadog等にサマらせるのが正解
12.
AWS LambdaVPC環境• VPC環境でのLambda動作は茨の道•
内部的にはEC2 ENIを確保するので、インスタンス数が勝手に増えたときの初期化に時間が掛かる(>10s)• IPアドレスプール(これもクラウドの都合で勝手に増える)• ⇒基本的にVPCは使わない• きちんと認証機構のあるコンポーネントを利用• Amazonモノなら普通にIAM Role• でも、たまにmemcachedとかRedisとか使いたくなる……
13.
AWS LambdaRDBMS使いづらい問題• 同時接続数コントロールできない•
FaaSなのでインスタンス数が勝手に増減する• 上限をコントロールすることができない• 思っていたよりも増える(後述)• AWSの中の人も「相性が悪い」と名言
14.
AWS LambdaRDBMS使いづらい問題• 同時接続数コントロールできない•
FaaSなのでインスタンス数が勝手に増減する• 上限をコントロールすることができない• 思っていたよりも増える(後述)• AWSの中の人も「相性が悪い」と名言•じゃあなんとかしてよ!!!!!
15.
AWS Lambda +
Kinesis Streams渡されるアイテムの個数• ストリーム上のアイテムをまとめてLambdaに渡して起動• 一気に渡す最大個数は指定できる(batch size)• 最大個数に満たないときは……?⇒適当にぽろぽろ飛んでくる• もうちょっとコントロールさせて欲しい• たとえば最大待ち時間とか
16.
AWS Lambda+Kinesis Streamsシャード毎の投入先Lambdaプロセス•
Kinesis Streamsはシャードという単位で複数のパイプに分割• パーティションキーとしてどのシャードに入れるかを指定• 一つのLambda関数は、シャードの数だけ同時実行される• 「シャード数が同時実行の単位」http://docs.aws.amazon.com/ja_jp/lambda/latest/dg/concurrent-executions.html• 思い込みによる失敗事例• Lambdaは連続実行している限りプロセスを使い回す⇒Lambda起動を跨いだデータ保持が可能ではないか?• 結論:同時「実行」されるのは1シャード1プロセスだが、複数のプロセスが起動しないとは言っていない(別プロセスが交互動作?)• FaaSなんだから関数の実行を跨ぐ状態を持ってはいけない(戒め)• ちなみに外部DBへの同時接続数も増えるはず
17.
Kinesis Streamsパーティションキーの指定方法• パーティションキーの分散度合いが重要•
いくらシャードを増やしても、キーが1種類だけだと分散しない• 例:SORACOM FunnelはSIMのIMSI(≒電話番号)がキーだった• 第三者がKinesisに投入する場合はうまくやってもらう• SORACOM Funnel で AWS Kinesis Streams を利用するときのオプションが追加されましたhttps://blog.soracom.jp/blog/2017/04/18/randomize-key/• 「Partition Key をリクエスト毎にランダムな値に設定するオプションを導入」
18.
DynamoDBそもそもKVSである• KVSってことは全てキー単位• パーティションキーでのアクセスが必須•
その中をソートキーで並べ替えは可能• セカンダリインデックスで多少は頑張れないことは無い(ただし書き込み課金は2倍)• JOINして一括で引っ張るとかは無理• N+1問題をベタに書くしか無い• リストを取得⇒N件分クエリを個別に投げる• あくまでデータの分散はパーティションキー• ソートキーだけで頑張ろうとする⇒データ分散しない⇒いつか死ぬ• Scanクエリ⇒テーブル全舐め⇒⏳
19.
DynamoDB案外安くない• (状況にもよるが)N+1なクエリが必要• 必然的にクエリの回数が増える•
1つの処理で200クエリをパラで投げてるとかザラ• それでもまともな時間で処理が終わる!すごいめう!• DynamoDB課金体系(東京)• 1秒あたり最大1回の書き込み能力の予約=月0.53USD(約60円)• 1秒で200個データ書き込もうとすると月12,000円💸• 読込はもうちょっと安い• リザーブドキャパシティーで1年契約で半額ぐらい• 事実上の資産管理を強いるの、やめてくだしあ><
20.
DynamoDBキャパシティの調整• 「確保量」であり「消費量」ではない• あらかじめ、必要な性能を確保する必要がある•
数字の上限で良いので、EC2のインスタンス管理よりは楽とはいえ……• 一日に性能を減らせる回数には上限あり(条件付き9回)• 消費量から自動化は可能• CloudWatchメトリクスで取得できる• 利用する時間帯や、実際の消費量からLambda等で調整することは可能⇒6/15、AutoScalingリリース!!!!!!!!!!!!!!!!!
21.
DynamoDBAutoScalingリリースされたけど• CloudWatch Alarmで閾値引っかかると性能を増減•
まあLambdaで普通にやるのと一緒の機能• 完全では無いので、導入してもメトリクスはきちんと注視• 「消費量」を基にしていて、スロットリングがトリガでは無い• 一つのlambdaから呼ぶ複数のテーブルで性能不足が起きると、互いに詰まって閾値まで消費量が上がってくれないことがある⇒スロットリング起きてるのに性能引き上げが起こらない
22.
DynamoDBバックアップ• 冗長化はクラウドが勝手にやってくれる• が、バックアップは自前で取る必要がある•
Google: “DynamoDB Backup”⇒ AWS DataPipelineつかってElacticMapReduceでS3に出力• 動作確認用にベースバックアップ取り込みとか考えるとちょっとカジュアルじゃない
23.
DynamoDBっていうかKVS(再)• そもそもKVSだけでモノを作るのが大変• ソシャゲ系の人がだいたい一度やってみて死んで覚える系あるある•
きちんとKVS系分散DBの特性抑えていないと設計ができない• せめて集約関数とか使わせてください• 同じ立ち位置のAzure CosmosDB(旧DocumentDB)にはある• 全部取ってきて自分で集約するしかない• まとめでデータぶっこ抜く系が弱い• ソートキーやスキャンで一定範囲ぶっこ抜き⇒APIレスポンス1回1MB制限で再送を強いられて(開発者が)死ぬ
24.
Kinesis Firehose東京に来ない• 手軽にS3に保存するためだけに太平洋を往復ビンタしたくない(本末転倒)•
Athenaの方が先に来ちゃったぞ!おい!
25.
Kinesis Analytics東京に来ないし上手く動かない• Analyticsさらっと使えるようになるとNoCodingの夢が広がる•
ポテンシャルは高いはず• RANK系関数が何をどうやっても動かなかった• 誰か教えてください
26.
とはいえ• Lambdaはこのユースケースでは圧倒的に楽• エラー再送とかKinesis
Streamsでうまくやってくれる• ただしイテレータの遅延時間の監視は必須• (なので極力処理毎にlambdaは分割してKinesisに複数ぶらさげる)• DynamoDB、十分に速い• 性能確保してパラレルで投げれば、きちんと返ってくる• 200クエリ束ねてPromise.all• 性能という数字の管理だけで上手く動いてくれるのは幸せ• とにかくスタートアップ的には札束ビンタで時間を稼げる
27.
マルチクラウド?• 使いたい機能を一番適合するクラウドのモノを使いたい• どうしても密結合が必要な部分はある(Kinesis⇒Lambda等)•
データストアやBIなどは上手く「つまみ食い」できるのでは• ユーザ面どうするか• 現状はAWS特化でやっている• ID基盤は、ひとまず利用者側はAuth0で外部化はしてある• API Gatewayのサービスプロキシ等でうまくやれるはず• どうやっていくかが今後の課題
28.
まだまだ道半ば• モノが足りない• KVSだけでシステムを作ることを強いられている•
Firehose/Analyticsとか便利なサービスがまだ東京に来ない• ノウハウが足りない• 各コンポーネントの特性に基づくリソース割当の監視、運用• あるていどの内部動作への理解が必要• もうちょっとサーバーレスで頑張ってみようというお気持ち• 基盤から全部自分で作るよりは相当に楽• サービスデリバリの高速化には既に十分寄与している• 全部おひとりさまサーバサイドエンジニアでなんとかなっている
29.
で、誰?• Aki (@nekoruri)•
BLEなIoTシステムのクラウド側担当• ちょろっと執筆も• 「薄い本」も出しています• 最近はすっかりセキュリティ教育畑に……• セキュリティ・キャンププロデューサー• SecHack365 実施協議会委員• ProjectDIVA Arcade LV.624 / ミリシタはじめましたNEW!
Download
[8]
ページ先頭
©2009-2025
Movatter.jp