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
150
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
150
Rust on Lambda 大きめCSV生成
atsuyokota
3
1.3k
Other Decks in Programming
See All in Programming
ABEMA iOS 大規模プロジェクトにおける段階的な技術刷新 / ABEMA iOS Technology Upgrade
akkyie
1
230
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
4
500
15分で学ぶDuckDBの可愛い使い方 DuckDBの最近の更新
notrogue
3
800
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
200
Jakarta EE meets AI
ivargrimstad
0
580
React 19アップデートのために必要なこと
uhyo
8
1.6k
新宿駅構内を三人称視点で探索してみる
satoshi7190
2
120
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
yukukotani
1
140
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
280
sappoRo.R #12 初心者セッション
kosugitti
0
280
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
400
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
230
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
650
Fireside Chat
paigeccino
35
3.2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
134
33k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
What's in a price? How to price your products and services
michaelherold
244
12k
Code Review Best Practice
trishagee
67
18k
How to Ace a Technical Interview
jacobian
276
23k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
How to Think Like a Performance Engineer
csswizardry
22
1.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