1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SnowflakeAdvent Calendar 2024

Day 3

ゼロから始めるSnowflake(1/10)

Last updated at Posted at 2024-12-22

初めてのSnowflake入門

これからSnowflakeを始める人向けに複数の記事に分けて解説を行う.

Snowflakeとは?

Snowflakeはクラウドベースのデータウェアハウスである.従来型のデータウェアハウスと比べて,以下の特徴がある.

  • 完全クラウドネイティブ:AWS,Azure,Google Cloud上で動作し,インフラ管理を意識する必要がない.
  • スケーラブル:ストレージとコンピュートが分離されており,必要に応じてリソースを柔軟に拡張可能.
  • マルチクラウド対応:複数のクラウドプロバイダー間で一貫性のある環境を提供.
  • 使いやすさ:SQLをベースにした操作と直感的なWeb UIで,データ分析を簡単に実行.

Snowflakeはデータの統合変換分析に特化しており,現代のデータドリブンな組織に適している.


Snowflakeのオブジェクトの概念

Snowflakeでは,データを管理するためにさまざまなオブジェクトが提供されている.主なオブジェクトの概要を以下に示す.

1. Database(データベース)

データを論理的にグループ化する単位.1つのデータベース内に複数のスキーマやテーブルを持つことができる.

CREATE DATABASE example_db;

2. Schema(スキーマ)

データベース内でさらにデータを整理するためのコンテナ.スキーマ内にはテーブルやビューを作成する.

CREATE SCHEMA example_schema;

3. Table(テーブル)

データを格納する基本単位.Snowflakeでは,通常のテーブル(Permanent Table)のほかに,以下の種類がある.

  • 一時テーブル(Temporary Table):セッション終了時に削除される.
  • トランジエントテーブル(Transient Table):バックアップ不要なデータ向け.
CREATE TABLE example_table (
    id INT,
    name STRING,
    created_at TIMESTAMP
);

4. View(ビュー)

SQLクエリの結果を仮想的なテーブルとして定義.データを物理的に持たない.

CREATE VIEW example_view AS
SELECT id, name FROM example_table WHERE id > 10;

5. Warehouse(ウェアハウス)

Snowflakeにおけるコンピュートリソース.クエリの実行やデータ処理を担当する.スケーリングや停止が簡単にできるため,コスト効率が高い.

CREATE WAREHOUSE example_wh
WITH WAREHOUSE_SIZE = 'XSMALL';

Snowflakeのコストの考え方

Snowflakeのコストモデルは,ストレージコストコンピュートコストの2つが主要な要素である.

1. ストレージコスト

  • データの保存にかかるコスト.
  • GB単位で課金され,保存データ量に比例する.
  • 圧縮技術により,コスト効率が良い.

2. コンピュートコスト

  • クエリの実行やデータ処理にかかるコスト.
  • **ウェアハウス(Warehouse)**の稼働時間に基づいて課金される.
  • ウェアハウスのサイズが大きいほど高コストになるが,クエリのパフォーマンスが向上する.
ウェアハウスサイズ 仮想CPU数 コスト(時間単位)
XSMALL 1
SMALL 2
MEDIUM 4

3. コスト削減のポイント

  • 必要な時だけウェアハウスを起動:クエリの実行後は自動で停止する設定を活用.
  • クエリの最適化:不要なデータスキャンを減らし,効率的にクエリを実行.
  • データのライフサイクル管理:古いデータをアーカイブして,ストレージコストを削減.

まとめ

Snowflakeは,シンプルな使いやすさと強力なスケーラビリティを兼ね備えたクラウドデータウェアハウスである.オブジェクトの概念やコストモデルを正しく理解することで,効率的なデータ分析基盤を構築できる.

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?