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
BigQueryテーブル最適化
Search
yu_sa18
March 02, 2023
Technology
0
190
BigQueryテーブル最適化
セゾン情報システムズ クラウド LT 大会 vol.3 の資料です
https://saison-coloris.connpass.com/event/274604/
yu_sa18
March 02, 2023
Tweet
Share
More Decks by yu_sa18
See All by yu_sa18
BigQuery Continuous query
yu_sa18
0
130
BigQuery の AWS Glue フェデレーションデータセット
yu_sa18
0
110
Duet AI in BigQuery
yu_sa18
0
220
BigQuery Studio
yu_sa18
0
480
【Google Cloud】組織なしプロジェクトを組織へ移行する
yu_sa18
0
400
DataFusionのネットワークでつまづいたはなし
yu_sa18
0
610
Datastream for BigQuery を使ってみた
yu_sa18
0
430
Other Decks in Technology
See All in Technology
配列に見る bash と zsh の違い
kazzpapa3
3
170
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
150
Tebiki Engineering Team Deck
tebiki
0
24k
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
220
ランサムウェア対策としてのpnpm導入のススメ
ishikawa_satoru
0
220
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
670
AI駆動開発を事業のコアに置く
tasukuonizawa
1
370
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
260
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
210
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
400
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
2
3.2k
Featured
See All Featured
Designing for Timeless Needs
cassininazir
0
130
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
440
The agentic SEO stack - context over prompts
schlessera
0
650
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
140
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
79
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
58
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.6k
GitHub's CSS Performance
jonrohan
1032
470k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
Navigating Team Friction
lara
192
16k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Transcript
BigQuery テーブル最適化 2023/3/1 澤木 佑果
自己紹介 2 所属:セゾン情報システムズ DataSpider と PIMSYNC 維持開発担当 趣味:おいしいものを食べること(苺のお菓子が楽しみ)
BigQuery テーブルの最適化 3 テーブルの最適化はパフォーマンス向上だけでなくコスト削減に繋がる BigQueryはクエリ実行時のテーブルのスキャン量に応じてコストが発生する スキャン量はクエリに指定したカラムのデータ量で決まる クエリに指定するカラムを最低限にすることのほかに、 テーブルのパーティション分割やクラスタ化することでスキャン量を削減できる
パーティション分割 4 パーティション分割とは、特定のカラムの値をもとに内部的に分割された テーブルを作成すること 例えば日付カラムをパーティションキーに指定したテーブルに対して、 条件式にパーティションキーを指定したクエリを実行すると、 条件に当てはまる分割テーブルのみスキャンする ここだけ スキャン
パーティション分割 設定方法 5 テーブル作成時にパーティションキーとするカラムを指定する コンソール画面からも指定できる [Google Cloud]分割テーブルの作成
パーティション分割 スキャン量の比較 6 クエリ実行前の予測からスキャン量が減少していることがわかる 分割していないテーブル パーティション分割したテーブル
クラスタリング 7 クラスタリングとは、特定のカラムの値をもとに内部的にテーブルデータを ソートすること 文字列カラムをクラスタ化したテーブルに対して、条件式にクラスタ化したカラ ムを指定したクエリを実行したとき、条件に当てはまる範囲をスキャンする [Google Cloud]クラスタ化テーブルの概要
クラスタリング 設定方法 8 テーブル作成時にクラスタ化するカラムを指定する コンソール画面からも指定できる [Google Cloud]クラスタ化テーブルの作成と使用
クラスタリング スキャン量の比較 9 クエリ実行結果からスキャン量が減少していることがわかる クラスタ化していないテーブル クラスタ化したテーブル
さいごに 10 • 要件によって使い分けができる • 事前にスキャン量を知りたいか • 指定したいカラムのデータ型 • 一つのテーブルで両方使うこともできるので、きめ細かい並び替えが可能
クエリに合わせたテーブル設計が大切!