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