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


Размер таблицы в Azure Databricks

Размер таблицы, сообщаемый для таблиц Azure Databricks, отличается от общего размера соответствующих каталогов файлов в облачном хранилище объектов. На этой странице описывается, почему эта разница существует и рекомендации по управлению затратами.

Почему размер таблицы не соответствует размеру каталога?

Размеры таблиц, сообщаемые в Azure Databricks через пользовательские интерфейсы и команды DESCRIBE, обозначают общий размер файлов данных на диске для тех файлов, на которые ссылается текущая версия таблицы. Большинство операций записи в таблицы требуют перезаписи базовых файлов данных, но старые файлы данных хранятся в течение определенного периода времени для поддержки запросов на поездки во времени.

Примечание.

При регулярном удалении или обновлении записей в таблицах векторы удаления могут ускорить запросы и уменьшить общий размер файлов данных. См. векторы удаления в Databricks.

Метрики вычисления для хранилища таблицы

Область применения:помечено «да» Databricks Runtime 18.0 и более поздних версий

Чтобы понять, почему общий размер хранилища отличается от размера таблицы, используйте ANALYZE TABLE … COMPUTE STORAGE METRICS. Эта команда предоставляет подробные сведения о выделении хранилища, помогая вам:

  • Определение возможностей оптимизации затрат: узнайте, сколько хранилища можно восстановить с помощью VACUUM
  • Анализ затрат на поездку по времени: сведения о затратах на хранение исторических данных
  • Отслеживание шаблонов хранения. Мониторинг развития хранилища таблиц с течением времени путем периодического выполнения команды
  • Аудит хранилищ данных по всем таблицам: выполняйте команду в цикле для анализа всей инфраструктуры данных.

Команда возвращает комплексные метрики, включая:

  • Общий размер хранилища: полный объем данных, метаданных и журналов
  • Активные данные: размер текущей версии таблицы
  • Вакуумные данные: пространство, которое можно восстановить
  • Данные о путешествиях во времени: исторические данные для резервных копий

Это особенно полезно для управляемых таблиц каталога Unity, где Azure Databricks автоматически управляет хранилищем с помощью прогнозной оптимизации.

Полный синтаксис и примеры см. в разделе МЕТРИКА ВЫЧИСЛИТЕЛЬНОГО ХРАНИЛИЩА.

Использование прогнозной оптимизации для управления размером данных

Databricks рекомендует использовать управляемые таблицы каталога Unity с включенной прогнозной оптимизацией. При использовании управляемых таблиц и прогнозной оптимизации Databricks автоматически выполняет OPTIMIZE и VACUUM команды, чтобы предотвратить накопление неиспользуемых файлов данных. Ожидается, что размер таблицы всегда отличается от текущей версии и общего размера файлов данных в облачном хранилище объектов. Это связано с тем, что файлы данных, на которые не ссылается текущая версия, требуются для поддержки запросов на поездки по времени. См. предсказательную оптимизацию для управляемых таблиц каталога Unity.

Какие метрики файлов сообщает VACUUM?

При очистке неиспользуемых файлов данных с помощью VACUUM или использования DRY RUN для предварительного просмотра файлов, установленных для удаления, метрики сообщают о количестве файлов и размера удаленных данных. Размер и количество файлов, удалённых VACUUM, резко меняются, но часто бывает так, что размер удалённых файлов превышает общий размер текущей версии таблицы.

Какие метрики файлов сообщает OPTIMIZE?

Когда OPTIMIZE запускается на предназначенной таблице, новые файлы данных объединяют записи из существующих файлов данных. Изменения, внесённые во время OPTIMIZE, затрагивают только организацию данных, и они не влияют на содержимое данных. Общий размер файлов данных, связанных с таблицей, увеличивается после выполнения OPTIMIZE, так как новые сжатые файлы сосуществуют в содержающем каталоге с файлами данных, на которые больше не ссылается ссылка.

Размер таблицы, сообщаемой после OPTIMIZE, обычно меньше размера перед запуском OPTIMIZE, так как общий размер файлов данных, на которые ссылается текущая версия таблицы, уменьшается с сжатием данных. VACUUM должен выполняться после прохождения порогового значения удержания, чтобы удалить файлы данных.

Примечание.

Аналогичные метрики могут отображаться для таких операций, как REORG TABLE или DROP FEATURE. Все операции, требующие перезаписи файлов данных, увеличивают общий размер данных в содержаемом каталоге, пока VACUUM не удаляет файлы данных, на которые больше не ссылается текущая версия таблицы.