ビュー、マテリアライズドビュー、動的テーブル¶
Snowflakeは、データを表示、マテリアライズ化、または変換するためのさまざまな構造を提供します。最も一般的なメカニズムは3つあります。
ビュー: Snowflakeは従来データベースビューと見なされているものを提供します。一般的に、ビューを使用すると、2つ以上のテーブルや他のビューを1つの論理ビューにリンク(データベース用語では結合)するなど、あたかもテーブルであるかのようにクエリの結果にアクセスすることができます。定義されたビューは、他のテーブルと同様にクエリできます。
マテリアライズドビュー: マテリアライズドビューは従来のビューとは異なり、マテリアライズドビューのクエリに基づいてデータセットを事前に計算する機能を備えています。結果は事前に計算されているため、マテリアライズドビューのクエリは、ビューのベーステーブルに対してクエリを実行するよりも高速です。このパフォーマンスの違いは、クエリが頻繁に実行される場合、または非常に複雑な場合に顕著になります。その結果、マテリアライズドビューは、特に頻繁に実行され、大規模なデータセットで実行される、高価な集計、射影、および選択操作を高速化できます。
動的テーブル: 動的テーブルは指定されたクエリの結果をマテリアライズ化します。ターゲットテーブルを別に作成し、そのテーブルのデータを変換および更新するコードを記述する代わりに、ターゲットテーブルを動的テーブルとして定義し、変換を実行する SQL ステートメントを指定することができます。その後、バックグラウンド自動化が指定した更新基準に基づいて動的テーブルを最新の状態に保ちます。
ビュー、マテリアライズドビュー、動的テーブルの比較¶
オブジェクト型 |
長所 |
短所 |
制限と詳細情報 |
---|---|---|---|
ビュー |
シンプルで簡単に定義でき、ストレージを消費しない。 |
柔軟性に欠け、スピードが遅く、結果を出すには計算が必要。 |
ビューの制限 をご参照ください。 |
マテリアライズドビュー |
迅速な結果検索。比較的シンプルな定義。やや柔軟性がある。常に最新。 |
最新の状態を維持するために計算が必要。ストレージを消費する。 |
マテリアライズドビューの制限などの詳細については マテリアライズドビューの使用 をご参照ください。 |
動的テーブル |
非常に高速な結果検索。比較的シンプルな定義。非常に柔軟性がある。更新の微調整。複雑な変換が可能。 |
最新の状態を維持するために計算コストがかかる。ストレージを消費する。更新の頻度、タイミング、方法について慎重に検討する必要がある。 |
動的テーブルの制限などの詳細については 動的テーブル をご参照ください。 |