メインコンテンツまでスキップ

Databricks のテーブルとビュー

この記事では、 Databricksのテーブル、ビュー、ストリーミングテーブル、マテリアライズドビューの概要について説明します。

テーブル

テーブルは、特定の場所に格納される構造化されたデータセットです。Databricks で登録されるデフォルトテーブルタイプは、マネージドテーブルUnity Catalogです。テーブルは、コマンドまたはDataFrame APIsを使用してクエリSQLおよび操作でき、 INSERTUPDATEDELETEMERGE INTOなどの操作をサポートします。「Databricks テーブル」を参照してください

ビュー

ビューは、データを格納せず、1 つ以上のテーブルのデータを特定の形式または抽象化で表示できるクエリによって定義される仮想テーブルです。ビューは、複雑なクエリを簡略化し、ビジネス ロジックをカプセル化し、ストレージを重複させることなく基になるデータへの一貫したインターフェイスを提供するのに役立ちます。ビューとはを参照してください。

マテリアライズドビュー

ビューと同様に、マテリアライズドビュー はクエリによって定義されます。 ただし、ビューとは異なり、マテリアライズドビューはクエリの結果を事前に計算して格納します。クエリは、ビューよりもマテリアライズドビューに対して高速に実行できますが、余分なストレージを消費します。 Databricks SQL を使用してスタンドアロンのマテリアライズドビューを作成および更新したりLakeflow宣言型パイプラインを使用して 1 つ以上のマテリアライズドビュー、ストリーミングテーブル、およびビューを作成および更新したりできます。「Databricks SQLでのマテリアライズドビューの使用」および「マテリアライズドビュー」を参照してください。

ストリーミングテーブル

ストリーミングテーブルは、Unity Catalogフロー を使用して定義する処理ロジックを含む マネージドテーブルの一種です。Databricks SQL を使用してスタンドアロンのストリーミングテーブルを作成および更新したりLakeflow宣言型パイプラインを使用して 1 つ以上のストリーミングテーブル、マテリアライズドビュー、およびビューを作成および更新したりできます。「Databricks SQLでストリーミングテーブルを使用する」および「ストリーミングテーブル」を参照してください。

マテリアライズドビュー vs. ストリーミングテーブル

マテリアライズドビュー と ストリーミングテーブルは、データエンジニアリングに使用される 2 つの一般的なデータ オブジェクトです。 マテリアライズドビュー はバッチ セマンティクスを使用し、ストリーミングテーブルはストリーミング セマンティクスを使用します。 バッチとストリーミングの比較、およびデータエンジニアリング ワークロードでそれらを選択する際の考慮事項については、「Databricksでのバッチとストリーミングのデータ処理」を参照してください。