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
データウェアハウスを使ってみよう
Search
みかん大学
June 01, 2024
Technology
0
54
データウェアハウスを使ってみよう
- データウェアハウスを使ってみよう
- BigQuery の使用例
みかん大学
June 01, 2024
Tweet
Share
More Decks by みかん大学
See All by みかん大学
VRChatのワールド情報が大量に集まっていた
hidetobara
0
120
VRChat と cluster ワールドの違い-その1-
hidetobara
0
320
VRChat 続・日本語圏のワールドの特徴
hidetobara
0
140
VRChat日本語圏のワールドの特徴
hidetobara
0
190
VRChat Lab抜けの条件
hidetobara
0
1.7k
アンドロイドは電気羊の絵を描くか?
hidetobara
2
59
Other Decks in Technology
See All in Technology
Lakebaseを使ったAIエージェントを実装してみる
kameitomohiro
0
120
生成AI開発案件におけるClineの業務活用事例とTips
shinya337
0
260
マネジメントって難しい、けどおもしろい / Management is tough, but fun! #em_findy
ar_tama
7
1.1k
Backlog ユーザー棚卸しRTA、多分これが一番早いと思います
__allllllllez__
1
150
United airlines®️ USA Contact Numbers: Complete 2025 Support Guide
unitedflyhelp
0
310
KubeCon + CloudNativeCon Japan 2025 Recap by CA
ponkio_o
PRO
0
300
20250705 Headlamp: 專注可擴展性的 Kubernetes 用戶界面
pichuang
0
270
LangSmith×Webhook連携で実現するプロンプトドリブンCI/CD
sergicalsix
1
230
Flutter向けPDFビューア、pdfrxのpdfium WASM対応について
espresso3389
0
130
整頓のジレンマとの戦い〜Tidy First?で振り返る事業とキャリアの歩み〜/Fighting the tidiness dilemma〜Business and Career Milestones Reflected on in Tidy First?〜
bitkey
2
16k
いつの間にか入れ替わってる!?新しいAWS Security Hubとは?
cmusudakeisuke
0
120
使いたいMCPサーバーはWeb APIをラップして自分で作る #QiitaBash
bengo4com
0
1.9k
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Designing Experiences People Love
moore
142
24k
Adopting Sorbet at Scale
ufuk
77
9.5k
We Have a Design System, Now What?
morganepeng
53
7.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
For a Future-Friendly Web
brad_frost
179
9.8k
How to Ace a Technical Interview
jacobian
278
23k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
KATA
mclloyd
30
14k
Navigating Team Friction
lara
187
15k
Transcript
データウェアハウスを 使ってみよう みかん電機
DWH (Data Warehouse)とは • 「データの倉庫」を意味する言葉 • 大量のデータを管理し、分析計算を高速に行うシステム • 例 ◦
Apache Hadoop, Spark, Hive ◦ AWS Athena, Redshift ◦ GCP BigQuery ◦ Azure SQL Data Warehouse ◦ Snowflake ◦ Databricks etc…
RDB (Relational Database) とは何が違うの? • 方言の違いはあるものの SQL でクエリを記述できるのは共通 • RDB
は行指向データベース、DWH は列指向データベース • DWH はデータ量がテラ、ペタ級になっても実用的に動作 • RDB はレコードの更新も速い、DWH だと更新は遅いもしくは不可 • RDB を使うのはWebアプリケーションなどのシステム、DWH を使うのは分析基盤 などのシステム user_id ・・・ 名前 年齢 1234 山田 21 1235 田中 30 1236 伊藤 60 行指向 列指向
Datalake とは何が違うの? • Datalake は生ログが置いてあり、DWH はそれらを整形して入れたものだったはず が・・・ ◦ AWS S3,
Athena は Datalake で、AWS Redshift が DWH • BigQuery は、改善によって、JSON形式の生ログを入れても大丈夫になっていた ・・・ ◦ 境界はあいまいな気が ◦ 本によっても言葉がぶれており
例)ECサイトの中での立ち位置 • Web Framework に Laravel • RDB に、AWS RDS
• Datalake として、AWS S3 / Athena • DWH に、AWS Redshift DWH RDB WEB サーバ Datalake ユーザデータ 生ログ • 購買ログ • ページ遷移
わざわざ分けるの面倒だし RDB でも良くないんですか? 「購買ログ・テーブルも、RDBに入れますね」 「カラムは、購買日時、ユーザID、商品ID でいいか」 「えっ、どこの県の人が買っているか調べたい?」 「ユーザ情報と JOIN して検索すると今の県しか分からないって?」
「購買ログ・テーブルのカラムにその時点での住所情報も追加しますね」 「え、年齢も年収も所帯も子供数もさらに必要って?」 「大変です、CMの影響でユーザ数が増大しています」 「RDBの容量の9割以上が購買ログなのですが!」 ・・・・・( ゚Д゚)
RDB
大量のデータを集めて分析するために作られたのが DWH 課題 • 分析用ログは正規化できないのでデータ量は膨大に • 分析対象となる膨大なデータは、RDB の検索性を圧迫しコストも増大 解決策 •
DWH を使おう! • BigQuery は、DWH の中でスタートアップや個人でも使いやすい ◦ 1ヶ月1Gのデータ保存で約3円、長期になると1.5円 ◦ スキャンしたデータ量だけ課金される、いわゆるサーバーレスの課金方式 ▪ 他のサービスのように最低でも月に〇万円かかる、ということは無い ▪ 1Gのスキャンで約0.937円 ◦ 初期の契約でも、GCP上の計算リソースが空いているならば最大 2000並列で計算してくれるので、 めっちゃ速い
まとめ • DWHは、大量のデータを管理することができます • そのデータの分析を高速に行うことができます • 餅は餅屋 • SQL でデータの操作はできるので実例は略
• DWH おススメの本→ • おまけ ◦ VRChat のワールドデータ公開します
おまけ)VRChat ワールドデータ (Parquet) • VRC API にて、ワールドの更新があるとその一覧が取得できるので、そこからデー タ取得 • ワールド名や作者名、訪問数、お気に入り数、説明文、タグなどがあります
おまけ)BigQuery で、月毎のワールド公開数を調べる • クエリを実行する前に、スキャンするデー タ量が表示され、計算コストが分かるので うれしい↑ • WITH 構文が使えるので、サブクエリのネ ストしなくても良い
• 最大2000並列で計算するので速い • クエリ結果は見やすいとは言えないので、 スプレッドシートや JupyterLab などにエク スポート