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
100
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
95
Amazon Rekognitionで 「信玄餅きなこ問題」を解決する
usanchuu
1
1.1k
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
4
520
Reachability Analyzer VS Kiro CLI ~ネットワークがつながらないとき、どっちを使う?~
usanchuu
1
71
Other Decks in Technology
See All in Technology
システムは「動く」だけでは足りない 実装編 - 非機能要件・分散システム・トレードオフをコードで見る
nwiizo
4
410
Revisiting [CLS] and Patch Token Interaction in Vision Transformers
yu4u
0
340
「責任あるAIエージェント」こそ自社で開発しよう!
minorun365
9
1.8k
#jawsugyokohama 100 LT11, "My AWS Journey 2011-2026 - kwntravel"
shinichirokawano
0
340
AI時代にデータ基盤が持つべきCapabilityを考える + Snowflake Data Superheroやっていき宣言 / Considering the Capabilities Data Platforms Should Have in the AI Era + Declaration of Commitment as a Snowflake Data Superhero
civitaspo
0
120
Amazon S3 Filesについて
yama3133
2
190
社内エンジニア勉強会の醍醐味と苦しみ/tamadev
nishiuma
0
140
みんなで作るAWS Tips 100連発 (FinOps編)
schwrzktz
1
280
MLOps導入のための組織作りの第一歩
akasan
0
320
AI時代 に増える データ活用先
takahal
0
180
ARIA Notifyについて
ryokatsuse
1
120
Azure PortalなどにみるWebアクセシビリティ
tomokusaba
0
390
Featured
See All Featured
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
370
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
170
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
260
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
510
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
27
3.4k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
110
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
YesSQL, Process and Tooling at Scale
rocio
174
15k
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(パーケイ)などの列指向フォーマットへの変換が必須!