Управляемые и внешние таблицы
Управляемые и внешние таблицы хранятся в Managed Metastore. Пользователь может создать эти таблицы SQL-запросом и определить вид таблицы параметром external_location:
без параметра external_location — управляемая таблица;
с параметром external_location — внешняя таблица.
Управляемая таблица
Управляемая таблица (внутренняя таблица) — таблица, с которой можно работать как с таблицей реляционной базы. Доступны стандартные SQL-команды INSERT, UPDATE, DROP и т.д.
Данные внутри управляемой таблицы (на S3) могут управляться Metastore. Наиболее наглядный пример — сценарий удаления таблицы.
Данные внутри управляемой таблицы хранятся в S3 директории строго в определенном каталоге Warehouse, название которого задается при настройке Managed Metastore.
Если пользователь выполнит команду DROP TABLE:
Метаданные будут удалены из Metastore.
Данные будут удалены из каталога Warehouse на S3.
Внешняя таблица
Внешняя таблица — таблица, необходимая для отправки SQL-запросов к файлам на S3 (ORC, Parquet, Avro, JSON, CSV, TextFile и др.).
Данные внутри этих таблиц не управляются Metastore.
Данные внутри этих таблиц хранятся директории S3 в том каталоге, который укажет пользователь.
Если пользователь выполнит команду DROP TABLE:
Метаданные будут удалены из Managed Metastore.
Данные в каталоге Warehouse на S3 останутся.
- Управляемая таблица
- Внешняя таблица