Databricks のテーブルとビュー
この記事では、 Databricksのテーブル、ビュー、ストリーミングテーブル、マテリアライズドビューの概要について説明します。
テーブル
テーブルは、特定の場所に格納された構造化されたデータセットです。Databricksで作成されたデフォルトテーブルタイプは、Unity Catalogマネージドテーブルです。テーブルは、INSERT
、UPDATE
、DELETE
、MERGE INTO
などの操作をサポートする SQL コマンドまたは DataFrame APIsを使用してクエリおよび操作できます。「テーブルとは」を参照してください。
ビュー
ビューは、データを格納せず、1 つ以上のテーブルのデータを特定の形式または抽象化で表示できるクエリによって定義される仮想テーブルです。ビューは、複雑なクエリを簡略化し、ビジネス ロジックをカプセル化し、ストレージを重複させることなく基になるデータへの一貫したインターフェイスを提供するのに役立ちます。ビューとはを参照してください。
マテリアライズドビュー
ビューと同様に、マテリアライズドビュー はクエリによって定義されます。 ただし、ビューとは異なり、マテリアライズドビューはクエリの結果を事前に計算して格納します。クエリは、ビューよりもマテリアライズドビューに対して高速に実行できますが、余分なストレージを消費します。 Databricks SQL を使用してスタンドアロンのマテリアライズドビューを作成および更新したり、DLT パイプラインを使用して 1 つ以上のマテリアライズドビュー、ストリーミングテーブル、およびビューを作成および更新したりできます。「Databricks SQLでのマテリアライズドビューの使用」および「マテリアライズドビュー」を参照してください。
ストリーミングテーブル
ストリーミングテーブルは、Unity Catalogフロー を使用して定義する処理ロジックを含む マネージドテーブルの一種です。Databricks SQL を使用してスタンドアロン ストリーミングテーブルを作成および更新したり、DLT パイプラインを使用して 1 つ以上のストリーミングテーブル、マテリアライズドビュー、およびビューを作成および更新したりできます。「Databricks SQLでストリーミングテーブルを使用する」および「ストリーミングテーブル」を参照してください。
マテリアライズドビュー vs. ストリーミングテーブル
マテリアライズドビュー と :[sts] は、データエンジニアリングに使用される 2 つの一般的なデータ オブジェクトです。 マテリアライズドビュー はバッチ セマンティクスを使用し、ストリーミングテーブルはストリーミング セマンティクスを使用します。 バッチとストリーミングの比較、およびデータエンジニアリング ワークロードでそれらを選択する際の考慮事項については、「Databricksでのバッチとストリーミングのデータ処理」を参照してください。