❄️
Snowflakeの基礎 ~アプリ担当向け~
1. Snowflakeのアーキテクチャを理解する
1.0. 到達目標
この章では、読了後に以下の状態になっていることを到達目標としています。
- Snowflakeの3層アーキテクチャについて、各レイヤーの名称と役割を理解する。
- ストレージ構造から、業務DBとDWHの違いについて理解する。
- 3層アーキテクチャの各レイヤーの理解のもと、効率の良いクエリ実行ができるようになる。
1.1. Snowflake概要
Snowflakeとはそもそも何か?というところを説明しています。(記事は1.2節と共通)
ポイントになる用語
- クラウドネイティブDWH
1.2. Snowflakeの3層アーキテクチャの全体像
Snowflakeの3層アーキテクチャについて、全体像として名称とざっくりの役割を説明しています。
(記事は1.1節と共通)
ポイントになる用語
- Shared-Everything/Shared-Nothing
- 3層アーキテクチャ
1.3. クラウドサービスレイヤー
クラウドサービスレイヤーの役割と、クラウドサービスレイヤーの仕組みを活かした効率的なクエリ実行のポイントを説明しています。
ポイントになる用語
- 結果キャッシュ
- メタデータキャッシュ
1.4. コンピュートレイヤー
コンピュートレイヤーの役割やウェアハウスの考え方と、コンピュートレイヤーの仕組みを活かした効率的なクエリ実行のポイントを説明しています。
ポイントになる用語
- ウェアハウス
- コンピュートノード
- クラスタ
- スケールアップ/スケールアウト
- データキャッシュ
- ステージからロードするファイルサイズ・ファイル数
1.5. ストレージレイヤー
ストレージレイヤーの役割やSnowflakeのストレージ構成と、ストレージレイヤーの仕組みを活かした効率的なクエリ実行のポイントを説明しています。
ポイントになる用語
- 行指向/列指向
- マイクロパーティショニング
- パーティションプルーニング
- クラスタリングキー
1.6. 1章のハンズオン
1章で説明した内容を身に着けるためのハンズオンを用意しています。
1.7. 確認問題
1章で説明した内容を身に着けるため確認問題を用意しています。
Discussion