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
AmazonAthenaで 競馬データをParquet化する
Search
usanchuu
March 11, 2026
Technology
120
0
Share
AmazonAthenaで 競馬データをParquet化する
2026/03/11 JAWS-UG茨城 #12春の推しAWSサービスLTまつり!での登壇資料です。
usanchuu
March 11, 2026
More Decks by usanchuu
See All by usanchuu
ラーメンにお酢が馴染む時間を計算したら麺が伸びそうになったので、 AWS Lambda Power TuningとManaged Instancesで爆速化する
usanchuu
1
120
Amazon Rekognitionで 「信玄餅きなこ問題」を解決する
usanchuu
1
1.2k
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
4
540
Reachability Analyzer VS Kiro CLI ~ネットワークがつながらないとき、どっちを使う?~
usanchuu
1
82
Other Decks in Technology
See All in Technology
キャリア25年目にしてTypeScript に出会うまで - 「型」を通じて振り返るプログラミング言語遍歴 / Meeting TypeScript After 25 Years in Tech - Looking Back at My Programming Language Journey Through "Types"
bitkey
PRO
1
110
全社統制を維持しながら現場負担をどう減らすか〜プラットフォームチームとセキュリティチームで進めたSecurity Hub活用によるAWS統制の見直し〜/secjaws-security-hub-custom-insights
mhrtech
1
630
20260515 ログイン機能だけではないアカウント管理を全体で考える~サービス設計者向け~
oidfj
1
870
生成AI時代に信頼性をどう保ち続けるか - Policy as Code の実践
akitok_
1
510
AsyncStreamでマルチブロードキャストを実装する
1mash0
1
180
障害対応のRunbookは作った、でも本当に動くの? AWS FIS で EKS の AZ 障害を再現してみた
tk3fftk
0
120
論文紹介:Pixal3D (SIGGRAPH 2026)
tenten0727
0
610
AI Agent に“攻略本”を渡したら、150フォームの移行が回り始めた話/登壇資料(高橋 悟生)
hacobu
PRO
0
180
Purview Endpoint DLP 動かしてみた
kozakigh
1
460
GCASアップデート(202603-202605)
techniczna
0
240
いつの間にかデータエンジニア以外の業務も増えていたけど、意外と経験が役に立ってる
zozotech
PRO
0
720
AWS WAFの運用を地道に改善し、自社で運用可能にするプラクティス
andpad
1
610
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
250
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
260
Believing is Seeing
oripsolob
1
130
4 Signs Your Business is Dying
shpigford
187
22k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
790
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
570
New Earth Scene 8
popppiees
3
2.2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Transcript
Amazon Athenaで 競馬データをParquet化する 2026/03/11 JAWS-UG 茨城 #12 春の推しAWSサービスLTまつり! 藤井 ひかり
① 推しサービス「Amazon Athena」についてご紹介 ② Amazon Athenaで競馬データをParquet化して万馬券を当てる 検証 今回の内容
発表者について フジイ ヒカリ と申します・x・ 社会人1年目:SIerのアーキテクチャチームでSEしてます データベース初学者ですが楽しく勉強しています AWSについて 保有資格:CLF,AIF,SAA,MLA,DEA ★昨年12月開催のJAWS-UG Presents
- AI Builders Dayを きっかけにAWSに興味をもち、現在絶賛勉強中です! X:@usanchuu
出走直前の馬体重とオッズのデータを分析して期待 値を出したい。 でもDEAの勉強中で悠長に考えてられない…RDS (データベース)を立てる時間も維持費も惜しい。 LT内容の背景:万馬券をあてたい!
DEA勉強中に出てきたAthenaはDB構築ゼロ+S3に データを置くだけで即SQLが使えるらしい! 勉強がてら使ってみよう LT内容の背景:万馬券をあてたい!
① 推しサービス「Amazon Athena」 についてご紹介
Amazon Athenaの名前の由来 ★推しポイント! ① 推しサービス「Amazon Athena」についてご紹介 「Athena」はギリシャ神話に登場する「知恵と戦略の女神」
Amazon Athenaの特徴 ① 推しサービス「Amazon Athena」についてご紹介 ②学習コストが『ゼロ』 ①DB構築が『ゼロ』 ③使っていない時の維持費が『ゼロ』 S3にファイル(CSVやJSON)を置くだけで、準備完了
標準的なSQLを叩くだけで、すぐにデータが返ってくる 『スキャンしたデータ量(1TBあたり約5ドル) 』だけの従量課金
Athenaの裏側で起こっていること ★Schema-on-Read https://docs.aws.amazon.com/ja_jp/athena/latest/ug/handling- schema-updates-chapter.html より ① 推しサービス「Amazon Athena」についてご紹介 【従来のDB:Schema-on-Write】 「①テーブル設計
→ ②データ投入 → ③検索」 →事前の設計とデータ加工が必須で大変! 【Athena:Schema-on-Read】 →生データに『読む瞬間だけ』枠を被せる!事前準備ゼロ!
・従来のオンプレDB:計算サーバーの中にハードディスク ・Athena:Coordinator(司令塔)がSQLを受け取ってGlue Data Catalog を見る→数百のノードが立ち上がり、並列処理をして即解散する。 Athenaの裏側で起こっていること ★コンピュート(計算処理)とストレージ(データ保存)の分離 https://docs.aws.amazon.com/ja_jp/athena/latest/ug/data-types.htmlより ① 推しサービス「Amazon
Athena」についてご紹介
② Amazon Athenaで競馬データを Parquet化して万馬券を当てる検証
検証方法 ② Amazon Athenaで競馬データをParquet化して万馬券を当てる検証 ダミーの競馬データをAIで生成(馬の名前、重さ、オッズ、レース名) ▶Athenaの画面で結果出力場所を指定▶データベースを作成 ▶検索クエリ実行 スクレイピングはやめておくことに...
手順1:とりあえずCSVで検索してみた結果…… ② Amazon Athenaで競馬データをParquet化して万馬券を当てる検証 ★csv形式:行指向
実行時間:781ms 手順1:とりあえずCSVで検索してみた結果…… ② Amazon Athenaで競馬データをParquet化して万馬券を当てる検証 ★csv形式:行指向 今回のSQLで欲しいのは「オッズ」と「重さ」のみ →馬の名前やレース名まで全部強制的に読み込まされる
手順2:データをParquet形式に変換した結果 ② Amazon Athenaで競馬データをParquet化して万馬券を当てる検証 ★Parquet(パーケイ)形式:列指向
手順2:データをParquet形式に変換した結果 ② Amazon Athenaで競馬データをParquet化して万馬券を当てる検証 ★Parquet(パーケイ)形式:列指向 データを「列(カラム) 」ごとに縦にまとめて保存 →「オッズ」と「重さ」のデータブロックだけをピンポイントで 読み込める。 実行時間:385ms ★396ms短縮!
いざ!レース本番!!
とおもったのですが、レースの時間が過ぎていました... Parquet変換のお勉強に夢中になって しまった;;
まとめ ★サーバーレスで手軽な反面、 『スキャンしたデータ量』に直接課金される ためデータの持ち方がコストに直結する! Athenaの課金体系 =「スキャン量」がすべて ★Parquet(パーケイ)などの列指向フォーマットへの変換が必須!