Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Athenaで実現する時系列データのパフォーマンス改善
Search
Atsushi Yokota
October 19, 2023
Programming
0
130
Athenaで実現する時系列データのパフォーマンス改善
AWS スタートアップ交流会 Beer Bust LT 資料
Atsushi Yokota
October 19, 2023
Tweet
Share
More Decks by Atsushi Yokota
See All by Atsushi Yokota
在庫の最適化を実現する SaaSデータ基盤の裏側
atsuyokota
0
140
Rust on Lambda 大きめCSV生成
atsuyokota
3
1.3k
Other Decks in Programming
See All in Programming
Amazon S3 NYJavaSIG 2024-12-12
sullis
0
110
テストコード書いてみませんか?
onopon
2
230
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
110
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
400
技術的負債と向き合うカイゼン活動を1年続けて分かった "持続可能" なプロダクト開発
yuichiro_serita
0
160
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
150
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
660
【re:Growth 2024】 Aurora DSQL をちゃんと話します!
maroon1st
0
810
StarlingMonkeyを触ってみた話 - 2024冬
syumai
3
290
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
770
毎日13時間もかかるバッチ処理をたった3日で60%短縮するためにやったこと
sho_ssk_
1
400
各クラウドサービスにおける.NETの対応と見解
ymd65536
0
190
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
298
20k
It's Worth the Effort
3n
183
28k
Agile that works and the tools we love
rasmusluckow
328
21k
A better future with KSS
kneath
238
17k
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
Code Reviewing Like a Champion
maltzj
521
39k
Making Projects Easy
brettharned
116
6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Become a Pro
speakerdeck
PRO
26
5k
The Invisible Side of Design
smashingmag
298
50k
4 Signs Your Business is Dying
shpigford
182
21k
Thoughts on Productivity
jonyablonski
68
4.4k
Transcript
Athenaで実現する時系列 データのパフォーマンス改善 フルカイテン株式会社 横田
Atsushi Yokota バックエンドエンジニア 2 • 2020年10月よりフルカイテンに参画。 • FULL KAITEN V3の新規開発に携わり、Rustによる
GraphQLサーバーの構築やデータ基盤の構築を担当 • バックエンドグループマネージャー 自己紹介
3 在庫を利益に 変えるクラウド 今ある在庫で 売上・利益を最大化! 直感的に操作できる 使いやすいツール 運用定着まで 徹底サポート! EC・店舗・倉庫、
全ての在庫をAIで予測・分析し、 商品力をワンクリックで見える化。 とは
4 導入実績 ※一部抜粋/順不同 ※2023年10月時点
1. フルカイテンのマイチャート機能について 2. AuroraからAthenaへの移行 3. Athenaのパーティションのポイント 4. 移行結果 Agenda
6 フルカイテンの「マイチャート」の機能について • 売上、粗利、在庫など多様な指標を日/週/月単位で可視化 • KPIの定点観測や課題探索ツールとして利用
7 マイチャート機能の特徴 データ量が多い レスポンス の遅延 書き込みの 増加
Rust AuroraからAthenaへ移行 React バックエンド GraphQL PostgreSQL フロントエンド React フロントエンド S3
After Before 取得 SQL Athena クエリエンジン (Trino/Presto) Glue データ基盤 Rust バックエンド GraphQL Glue データ基盤 取得 SQL 書込 書込
9 Athenaのパーティション例 時系列 データ date=2023-10-01/ xx.parquet …… 1億 15万 8万
20万 適切なパーティション化によるレスポンスの高速化 date=2023-10-02/ date=2023-10-03/ xx.parquet xx.parquet
10 移行結果 データ量が多いほど、Athenaの方が効果的 ※Auroraは運用上、日付をインデックスにしての計測となります。
11 まとめ • Athenaの移行によって、データ量が多いアカウントで も一定時間でレスポンスが返ってくるようになった。 • AuroraのI/Oコストの削減にも繋がった。 データの特性や要件に合わせてサービス選定をしよう
エンジニア募集中! 一緒に世界の大量廃棄問題を解決しましょう! https://note.com/fullkaiten_re フルカイテン公式note