Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Внешние таблицы, иногда называемые федеративные таблицы, являются таблицами, зарегистрированными с помощью каталога Unity в составе внешнего каталога. Внешние таблицы содержат данные и метаданные, управляемые внешними системами, и каталог Unity Catalog добавляет управление данными для выполнения запросов к этим таблицам.
Azure Databricks поддерживает следующие методы регистрации внешних таблиц:
- Федерация запросов использует безопасные подключения JDBC для объединения с внешними системами данных, такими как PostgreSQL и MySQL.
- Федерация каталогов подключает внешние каталоги, такие как хранилище метаданных Hive или Каталог Snowflake Horizon, для запроса данных непосредственно в хранилище файлов.
Important
Для обратной совместимости с устаревшими рабочими нагрузками Apache Spark и Azure Databricks внешние таблицы в федеративном хранилище метаданных Hive возвращают метаданные из хранилища метаданных Hive, включая, является ли таблица управляемой таблицей Hive или внешней таблицей Hive.
Когда следует использовать внешние таблицы
Внешние таблицы обеспечивают гибкость при интеграции Azure Databricks с существующими системами данных или миграции из устаревших систем.
Многие внешние таблицы служат временным решением для прямого доступа к данным, не управляемым Azure Databricks, без необходимости переноса данных или рефакторинга кода для вышестоящих рабочих процессов ETL. Databricks рекомендует переносить наборы данных, которые управляют рабочими нагрузками или часто запрашиваются в управляемые таблицы каталога Unity. Управляемые таблицы обеспечивают оптимальную производительность и имеют множество встроенных оптимизаций. См. Внешние таблицы в SQL.
Федерация запросов — это дополнительное решение для загрузки данных из внешних систем данных, не поддерживаемых Lakeflow Connect. Databricks рекомендует использовать материализованные представления для репликации внешних таблиц в каталог Unity. Смотрите Загрузка данных из внешних таблиц с материализованными представлениями.
Создание или запись в внешние таблицы
Если у вас есть достаточные привилегии, а рабочая область настроена с внутренним федеративным хранилищем метаданных Hive, можно создать или записать в внешние таблицы, поддерживаемые этим внутренним федеративным хранилищем метаданных Hive. Внешнее федеративное хранилище метаданных Hive и все внешние таблицы, к которым обращается федерация Lakehouse, доступны только для чтения.
Хотя внешние таблицы доступны только для чтения, в поле "Обновлено" отображается пользователь, который активировал последнее обновление метаданных. Azure Databricks автоматически обновляет метаданные внешней таблицы во время запросов при обнаружении устаревших метаданных. В результате в поле "Обновлено" отображается session_user тот, кто выполнил запрос, даже если этот пользователь не изменял исходные данные.
Azure Databricks не управляет метаданными, данными или семантикой для записи в внешние таблицы. Внешние таблицы могут быть поддерживаются форматом, совместимым с ACID, например Delta Lake или Apache Iceberg, но они не предоставляют транзакционные гарантии управляемых таблиц каталога Unity.
Большинство оптимизаций в Azure Databricks, направленных на повышение производительности запросов, увеличение скорости записи, пропуск данных и выполнение запросов только к метаданным, требуют Unity Catalog. Databricks рекомендует сравнивать производительность запросов чтения и записи между внешними таблицами и управляемыми таблицами каталога Unity, используя последнюю версию среды выполнения Databricks для оценки задержек и различий затрат. См. управляемые таблицы Unity Catalog для Delta Lake и Apache Iceberg.