【Databricks】Managed TableとExternal Tableについて

Databricks では、テーブルのデータ管理方法によって Managed Table(管理対象テーブル)External Table(外部テーブル) の2種類のテーブルがあります。

Managed Table(管理対象テーブル)

テーブルのデータがDelta Lakeで管理されているテーブルです。データとメタデータがデルタテーブル内に保持され、テーブルが削除されると、そのデータとメタデータもストレージから削除されます。

「DROP TABLE table」 コマンドを実行すると、テーブルが削除され、対応する データファイル と メタデータ がストレージから削除されます。

データベースを削除する場合

上記二つのテーブルを含むデータベースを削除する際は下記コマンドを実行します。

DROP DATABASE "データベース名" CASCADE

External Table(外部テーブル)

メタデータのみを Databricks(Spark)が管理し、データは外部ストレージに保持されます。
下記の様に場所を指定したコマンド実行で作成されます。

CREATE TABLE my_external_table (
    id INT,
    name STRING,
    sales DOUBLE
) LOCATION 'dbfs:/mnt/external_data/';

既存のテーブルがどちらのタイプかを調べる

下記SQLコマンドでテーブルの詳細情報(メタデータ)を表示します。

DESCRIBE EXTENDED my_table;

コメント

タイトルとURLをコピーしました