Enviar búsqueda
Cargar
ぼくがAthenaで死ぬまで
•
24 recomendaciones
•
25,730 vistas
S
Shinichi Takahashi
Seguir
はじめてのくらうど死
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 52
Descargar ahora
Descargar para leer sin conexión
Recomendados
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Amazon Web Services Japan
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
Amazon Web Services Japan
20210526 AWS Expert Online マルチアカウント管理の基本
20210526 AWS Expert Online マルチアカウント管理の基本
Amazon Web Services Japan
20191030 AWS Black Belt Online Seminar AWS IoT Analytics Deep Dive
20191030 AWS Black Belt Online Seminar AWS IoT Analytics Deep Dive
Amazon Web Services Japan
Kinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみた
dcubeio
CloudFrontのリアルタイムログをKibanaで可視化しよう
CloudFrontのリアルタイムログをKibanaで可視化しよう
Eiji KOMINAMI
DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
Amazon Web Services Japan
Más contenido relacionado
La actualidad más candente
AWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormation
Amazon Web Services Japan
20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session
20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session
Amazon Web Services Japan
20180425 AWS Black Belt Online Seminar Amazon Relational Database Service (Am...
20180425 AWS Black Belt Online Seminar Amazon Relational Database Service (Am...
Amazon Web Services Japan
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
Amazon Web Services Japan
20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre
20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre
Amazon Web Services Japan
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
Amazon Web Services Japan
20200422 AWS Black Belt Online Seminar Amazon Elastic Container Service (Amaz...
20200422 AWS Black Belt Online Seminar Amazon Elastic Container Service (Amaz...
Amazon Web Services Japan
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
Amazon Web Services Japan
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
Amazon Web Services Japan
20190320 AWS Black Belt Online Seminar Amazon EBS
20190320 AWS Black Belt Online Seminar Amazon EBS
Amazon Web Services Japan
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
Amazon Web Services Japan
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Amazon Web Services Japan
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
Amazon Web Services Japan
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
Amazon Web Services Japan
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
Amazon Web Services Japan
AWS Black Belt Online Seminar - Amazon Lightsail
AWS Black Belt Online Seminar - Amazon Lightsail
Amazon Web Services Japan
Glue DataBrewでデータをクリーニング、加工してみよう
Glue DataBrewでデータをクリーニング、加工してみよう
takeshi suto
20200811 AWS Black Belt Online Seminar CloudEndure
20200811 AWS Black Belt Online Seminar CloudEndure
Amazon Web Services Japan
AWS Black Belt Tech シリーズ 2016 - Amazon CloudFront
AWS Black Belt Tech シリーズ 2016 - Amazon CloudFront
Amazon Web Services Japan
AWSメンテナンス ElastiCache編
AWSメンテナンス ElastiCache編
Serverworks Co.,Ltd.
La actualidad más candente
(20)
AWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormation
20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session
20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session
20180425 AWS Black Belt Online Seminar Amazon Relational Database Service (Am...
20180425 AWS Black Belt Online Seminar Amazon Relational Database Service (Am...
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre
20190319 AWS Black Belt Online Seminar Amazon FSx for Lustre
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
20200422 AWS Black Belt Online Seminar Amazon Elastic Container Service (Amaz...
20200422 AWS Black Belt Online Seminar Amazon Elastic Container Service (Amaz...
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190320 AWS Black Belt Online Seminar Amazon EBS
20190320 AWS Black Belt Online Seminar Amazon EBS
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
AWS Black Belt Online Seminar - Amazon Lightsail
AWS Black Belt Online Seminar - Amazon Lightsail
Glue DataBrewでデータをクリーニング、加工してみよう
Glue DataBrewでデータをクリーニング、加工してみよう
20200811 AWS Black Belt Online Seminar CloudEndure
20200811 AWS Black Belt Online Seminar CloudEndure
AWS Black Belt Tech シリーズ 2016 - Amazon CloudFront
AWS Black Belt Tech シリーズ 2016 - Amazon CloudFront
AWSメンテナンス ElastiCache編
AWSメンテナンス ElastiCache編
Más de Shinichi Takahashi
BIT VALLEY 2019 - クラウド時代のエンジニア生存戦略
BIT VALLEY 2019 - クラウド時代のエンジニア生存戦略
Shinichi Takahashi
(Un)ManagedBlockchain
(Un)ManagedBlockchain
Shinichi Takahashi
ここがつらいよ サーバーレス
ここがつらいよ サーバーレス
Shinichi Takahashi
20171005 告白に学ぶ http status code
20171005 告白に学ぶ http status code
Shinichi Takahashi
「関心事」と「責務」 の お話
「関心事」と「責務」 の お話
Shinichi Takahashi
フロントエンドフレームワークの選び方 - 20170320
フロントエンドフレームワークの選び方 - 20170320
Shinichi Takahashi
AWS新サービス活用事例
AWS新サービス活用事例
Shinichi Takahashi
PHPerだってMicroservicesしたい!
PHPerだってMicroservicesしたい!
Shinichi Takahashi
Let’s make elastic cms together!
Let’s make elastic cms together!
Shinichi Takahashi
事例から見るTwilio活用法
事例から見るTwilio活用法
Shinichi Takahashi
PHPから離れて感じるPHPの良さ
PHPから離れて感じるPHPの良さ
Shinichi Takahashi
♡PHPが恋しい話♡
♡PHPが恋しい話♡
Shinichi Takahashi
IoTの原点
IoTの原点
Shinichi Takahashi
Web開発の 今までとこれから
Web開発の 今までとこれから
Shinichi Takahashi
EC-CUBE3プラグイン仕様
EC-CUBE3プラグイン仕様
Shinichi Takahashi
Symfonyコンポーネントで生まれ変わるEC-CUBE
Symfonyコンポーネントで生まれ変わるEC-CUBE
Shinichi Takahashi
難しいよね、コードレビュー
難しいよね、コードレビュー
Shinichi Takahashi
日常に見るUI/UX
日常に見るUI/UX
Shinichi Takahashi
Más de Shinichi Takahashi
(18)
BIT VALLEY 2019 - クラウド時代のエンジニア生存戦略
BIT VALLEY 2019 - クラウド時代のエンジニア生存戦略
(Un)ManagedBlockchain
(Un)ManagedBlockchain
ここがつらいよ サーバーレス
ここがつらいよ サーバーレス
20171005 告白に学ぶ http status code
20171005 告白に学ぶ http status code
「関心事」と「責務」 の お話
「関心事」と「責務」 の お話
フロントエンドフレームワークの選び方 - 20170320
フロントエンドフレームワークの選び方 - 20170320
AWS新サービス活用事例
AWS新サービス活用事例
PHPerだってMicroservicesしたい!
PHPerだってMicroservicesしたい!
Let’s make elastic cms together!
Let’s make elastic cms together!
事例から見るTwilio活用法
事例から見るTwilio活用法
PHPから離れて感じるPHPの良さ
PHPから離れて感じるPHPの良さ
♡PHPが恋しい話♡
♡PHPが恋しい話♡
IoTの原点
IoTの原点
Web開発の 今までとこれから
Web開発の 今までとこれから
EC-CUBE3プラグイン仕様
EC-CUBE3プラグイン仕様
Symfonyコンポーネントで生まれ変わるEC-CUBE
Symfonyコンポーネントで生まれ変わるEC-CUBE
難しいよね、コードレビュー
難しいよね、コードレビュー
日常に見るUI/UX
日常に見るUI/UX
Último
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
Industrial Technology Research Institute (ITRI)(工業技術研究院, 工研院)
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
Matsushita Laboratory
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
ssuser370dd7
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
Ayachika Kitazaki
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
arts yokohama
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
Shumpei Kishi
2024 03 CTEA
2024 03 CTEA
arts yokohama
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
Tetsuya Nihonmatsu
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
arts yokohama
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
Sadao Tokuyama
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
ssuser539845
2024 04 minnanoito
2024 04 minnanoito
arts yokohama
Último
(12)
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
2024 03 CTEA
2024 03 CTEA
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
2024 04 minnanoito
2024 04 minnanoito
ぼくがAthenaで死ぬまで
1.
ぼくがAthenaで 死ぬまで cloudpack社内勉強会
2.
軽い気持ちでやろうとしたこと ● Urchin(紀元前に存在が確認された古代兵器)をもうやめたい ● なにやらAWSにAthenaとかいうのがあるらしい ●
よっしゃやったろ
3.
要件 ● 朝09:00くらいには前日分のデータ閲覧したい ● 閲覧者にSQLを書かせない
/ 意識させない ● CloudFront / ELBのログをインタラクティブに解析したい ● テーブルはCF: 3 / ELB: 2 ● 分析の種類はCF: 6 / ELB: 5
4.
ver.A サーバーレス 思想
5.
ver.A構想 ● サーバーレスで余裕だろwwwwなめんなwwwwww ● Athenawww銀の弾丸ktkrwwwwwwwwww ●
10daysあればenough
6.
ver.A アーキテクチャ
7.
ver.A アーキテクチャ データよこせ SELECT….
8.
ver.A アーキテクチャ 集計して返却 データよこせ SELECT….
9.
ver.A 現実
10.
ver.A アーキテクチャ データよこせ SELECT….
11.
ver.A アーキテクチャ すげえ時間 かかる 90s < データよこせ SELECT….
12.
ver.A アーキテクチャ すげえ時間 かかる 90s <
タイムアウト < 30s データよこせ SELECT….
13.
ver.A アーキテクチャ すげえ時間 かかる 90s <
タイムアウト < 30s データよこせ SELECT….
14.
ver.Aの反省点 ● Athenaの実行速度検証より先に組んじゃった ● API
Gatewayのタイムアウトは緩和できない ● クエリをGETでぶん投げるセキュアさが残る
15.
ver.B 中間データ 思想
16.
ver.B 中間データ 死相
17.
ver.B構想 ● 中間データをキャッシュ化すりゃちょろいだろwww ● すげえクエリ数になるからLambda再帰実行したろwwwww ●
10daysあればenoughwwwwwwwwww
18.
ver.B構想 ● 中間データをキャッシュ化すりゃちょろいだろwww ● すげえクエリ数になるからLambda再帰実行したろwwwww ●
10daysあればenoughwwwwwwwwww ―その時ぼくは本気でそう思っていた―
19.
ver.B アーキテクチャ
20.
ver.B アーキテクチャ AM04:00に実行 されるバッチ部分 Webから中間データを 探査する部分
21.
ver.B アーキテクチャ CF:3 /
ELB: 2テーブル CF: 6 / ELB: 5クエリ 24時間分 = 672クエリ終わるまで再帰実行
22.
ver.B アーキテクチャ CF:3 /
ELB: 2テーブル CF: 6 / ELB: 5クエリ 24時間分 = 672クエリ終わるまで再帰実行 中間データとして保存
23.
ver.B アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ
24.
ver.B アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ 中間データを返却
25.
ver.B アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ 中間データを返却 集計
26.
ver.B 現実
27.
ver.B アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ
28.
ver.B アーキテクチャ レスポンスタイムは 余裕でクリア!! データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ
29.
ver.B アーキテクチャ レスポンスタイムは 余裕でクリア!! データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ サイズでかすぎて死亡
30.
ver.B アーキテクチャ サイズでかすぎて死亡 データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ レスポンスタイムは 余裕でクリア!!そもそも 無限ループしてた
31.
ver.B アーキテクチャ サイズでかすぎて死亡 データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ レスポンスタイムは 余裕でクリア!!そもそも 無限ループしてた
32.
ver.B 終わりの 始まり
33.
終わりの始まり ● Athenaのトラフィックが急増してサービス制限がかかった@15日 ○ 該当リソースを無効化 ●
東京からオレゴンへの転送量が170TB突破 == 170万円@17日 ○ ぼくのボーナスがなくなることが確定 ○ デバッグ開始 + 該当リソース全削除 ○ サポート問い合わせ
34.
サポートとのやりとり ● そんないくかね? ○ 2017/03/17
16:00 - 16:18 の間のクエリについて調査 ○ 808クエリ実行(成功:178 / 失敗:630) ○ 1クエリあたり4GBほどデータスキャン ○ 該当のテーブルは東京リージョンのS3と合致 ○ 単純計算で (4GB / 18分間) * 2日分 = 134400GB つまり、ぼくの実装がバグってる
35.
わかったこと ● テーブルの1つが東京リージョンにあった ○ 他の4テーブルは俺たちのオレゴン ●
Lambdaが無限ループしてた ● エラーハンドリングできず死に続けていた ○ しかもいっちょ前にデータ転送だけは続ける
36.
なんでこんなことが起きていたか ● ちゃんと再帰の終了条件チェックしたつもりだった ○ 一度エラーが起きると止まることなく死に続ける仕組み ●
夜間バッチを放置してるわずか3日間の出来事 ○ ちょっとデータ溜まったら整合確認しようとしていた ● そもそもユースケースにあってなかった ○ GoogleAnalyticsで異常検知 -> 原因をピンポイントで探る目的 ■ 全ログをキャッシュする必要はない ■ (ミスがなくても)ほぼ無駄にお金かかる仕組み
37.
再発防止どうすんの? ● ちゃんとユースケースのヒアリングをする ○ そもそも論だけどやっぱり重要 ●
ちゃんとプログラムのチェックをする ○ 複数人つかっての多重チェック == 自分を信用しない ● ちゃんとリリース後のエラー発生回数などをチェックする ○ テスト実行時間を調整 ○ 複数人つかっての多重チェック == 自分を信用しない
38.
ver.C ポーリング 思想
39.
ver.C アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ
40.
ver.C アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ データくれって 言われたから このKeyでObjectつくれ よ このKeyでつくるんで!
41.
ver.C アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ データくれって 言われたから このKeyでObjectつくれ よ このKeyでつくるんで! はい はい
42.
ver.C アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ データくれって 言われたから このKeyでObjectつくれ よ このKeyでつくるんで! このKeyのデータあります か? はい はい
43.
ver.C アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ データくれって 言われたから このKeyでObjectつくれ よ このKeyでつくるんで! このKeyのデータあります か?ないんごwwwwww はい はい
44.
ver.C アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ データくれって 言われたから このKeyでObjectつくれ よ このKeyでつくるんで! このKeyのデータあります か?ないんごwwwwww このKeyのデータあります か? はい はい
45.
ver.C アーキテクチャ データよこせ ・いつから ・いつまで ・テーブル ・クエリタイプ データくれって 言われたから このKeyでObjectつくれ よ このKeyでつくるんで! このKeyのデータあります か?ないんごwwwwww このKeyのデータあります か?できたんごwwww はい はい
46.
ver.C ● トリガーLambda:非同期実行のトリガー ○ ObjectKey生成 ○
生成したObjectKeyとブラウザからのリクエストを 集計Lambdaに渡す ○ 生成したObjectKeyをブラウザに返却
47.
ver.C ● データ集計Lambda:集計を担う ○ トリガーLambdaをバイパスしたリクエストに従い、 Athenaを用いた集計を行う ○
集計したデータをトリガーLambdaから 受け取ったObjectKeyに従って配置
48.
ver.C ● データ取得Lambda:S3オブジェクトの取り出し口 ○ リクエストされたObjectKeyのS3
Objectが存在すれば ■ データを返却 ■ 該当Objectの削除 ○ 存在しなければ ■ エラーを返却
49.
● API Gatewayの30秒縛りから解き放たれる ○
Lambdaの5分縛りに緩和される == 10倍!! ● 必要なときに必要な分だけ課金される ○ 170万いかない ver.Cでうれしいこと
50.
● API Gatewayの30秒縛りから解き放たれる ○
Lambdaの5分縛りに緩和される == 10倍!! ● 必要なときに必要な分だけ課金される ver.Cでうれしいこと ver.Aの教訓!! ver.Bの教訓!!
51.
● Athena使う際は、リージョンに気をつけよう ● Lambdaを再帰実行する際は、適切に終了するか確認しよう ●
この資料つくってるときが一番つらかった まとめ
Descargar ahora