Поделиться через


Что такое таблицы и представления?

Таблицы и представления — это основные понятия в Databricks для организации и доступа к данным.

Таблица — это структурированный набор данных, хранящийся в определенном расположении, обычно в формате Delta Lake. Таблицы хранят фактические данные в хранилище и могут запрашиваться и управляться с помощью команд SQL или API кадра данных, поддерживающих операции, такие как вставка, обновление, удаление и слияние. См . статью "Что такое таблица?".

Представление — это виртуальная таблица, определяемая SQL-запросом. Представление не сохраняет данные. Вместо этого представление предоставляет способ представления данных из одной или нескольких таблиц в определенном формате или абстракции. Представления полезны для упрощения сложных запросов, инкапсулирования бизнес-логики и обеспечения согласованного интерфейса базовых данных без дедупликации хранилища. См . представление?.

Таблицы и представления в каталоге Unity

Таблицы и представления управляются с помощью каталога Unity. В каталоге Unity таблицы и представления располагаются на третьем уровне трехуровневого пространства имен (catalog.schema.table), как показано на следующей схеме.

Схема объектной модели каталога Unity, ориентированная на таблицу

Различия между разностными таблицами, потоковыми таблицами и материализованными представлениями

В следующей таблице приведены ответы на часто задаваемые вопросы о различиях между таблицами Delta, потоковыми таблицами и материализованными представлениями.

Вопрос Таблица Delta ST MV
Что это такое? Стандартные таблицы, хранящиеся в формате Delta Lake, поддерживающие транзакции ACID, применение схемы и другие функции Delta Lake. Обычная разностная таблица, расширенная для потоковой передачи и добавочной обработки вариантов использования. Результат запроса, результат которого всегда вычисляется предварительно и правильно.
Какие варианты использования рекомендуется использовать? Процедурный код, который выполняет следующие действия:

-Проглатывание
-Преобразование
Декларативный код, который выполняет следующие действия:

— прием из источников только для добавления
— преобразования с низкой задержкой
Декларативный код, который выполняет следующие действия:

— добавочные преобразования
— преобразования пакетной службы
Как он заполняется? Процедурный код (INSERT, UPDATE, MERGEсекционирование перезаписи с помощью replaceWhere) Декларативный код, включая:

— добавление потоков
— ПРИМЕНЕНИЕ ПОТОКОВ ИЗМЕНЕНИЙ
— Один раз потоки
Декларативные запросы
Что такое тип объекта в каталоге Unity? Таблица Таблица Представления
Кто может обновить его? Любой модуль записи, который может обновить таблицу Delta. Только конвейер, определяющий потоковую таблицу, может обновить ее. Только конвейер, определяющий материализованное представление, может обновить его.
С какими функциями Delta Lake она совместима? Поддерживает все функции Delta Lake. Не поддерживает:

— Секционирование жидкости
— прогнозная оптимизация
Не поддерживает:

— Секционирование жидкости
— прогнозная оптимизация