ANALYZE TABLE ... МЕТРИКИ ХРАНИЛИЩА ВЫЧИСЛЕНИЙ

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

Команда ANALYZE TABLE … COMPUTE STORAGE METRICS вычисляет общие метрики размера хранилища для таблицы. Он предоставляет подробные сведения о разбивке хранилища для анализа затрат и оптимизации. Оптимизация производительности запросов см. в разделеANALYZE TABLE ... СТАТИСТИКА ВЫЧИСЛЕНИЙ.

Синтаксис

ANALYZE TABLE table_name COMPUTE STORAGE METRICS

Параметры

Description

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

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

Выходные метрики

Команда возвращает следующие метрики в одной строке:

Поле Описание
total_bytes Общий размер хранилища для таблицы. Это равно размеру журнала транзакций + активным байтам + вакуумным байтам и байтам времени перемещения.
num_total_files Общее количество файлов, включая разностные файлы журнала, активные файлы, вакуумируемые файлы и файлы путешествия во времени.
active_bytes Размер файлов данных, на которые активно ссылается таблица (аналогично sizeInBytes).
num_active_files Общее количество файлов, на которые активно ссылается таблица.
vacuumable_bytes Размер данных, которые можно удалить путем выполнения VACUUM или включения прогнозной оптимизации.
num_vacuumable_files Количество очищаемых файлов.
time_travel_bytes Размер исторических данных, используемых для откатов и операций перемещения во времени. Также называется байтами с метками или аварийно-защищёнными байтами.
num_time_travel_files Количество файлов, используемых для перемещения по времени.

Сведения

  • Команда использует рекурсивный список подхода для вычисления информации о хранилище. Время выполнения обычно находится в течение нескольких минут, но может занять до нескольких часов для очень больших таблиц.
  • Эта команда работает как для управляемых, так и внешних таблиц каталога Unity.
  • Метрики хранилища вычисляются во время выполнения команды и не хранятся в каталоге Unity или возвращаются DESCRIBE EXTENDED.
  • Чтобы отслеживать изменения хранилища с течением времени, периодически выполните эту команду и сохраните результаты в таблице. Выполните эту команду в цикле между несколькими таблицами, чтобы проанализировать шаблоны хранения в пределах вашего пространства данных.

Учет типа таблицы

Для материализованных представлений и потоковых таблиц total_bytes включает размер таблицы и связанных метаданных. active_bytes Метрика исключает вакуумные и перемещаемые по времени части таблицы.

Для мелких клонов total_bytes включает только собственные метаданные и разностные файлы журнала клона, за исключением исходных файлов таблицы. active_bytes равно нулю, так как клон ссылается на файлы данных исходной таблицы.

Примеры

> ANALYZE TABLE main.my_schema.my_table COMPUTE STORAGE METRICS;
total_bytes  total_num_files  active_bytes  num_active_files  vacuumable_bytes  num_vacuumable_files  time_travel_bytes  num_time_travel_files
-----------  ---------------  ------------  ----------------  ----------------  --------------------  -----------------  ---------------------
 5368709120             1250    4294967296              1000        805306368                   150         268435456                    100

Выходные данные показаны:

  • Общее хранилище: 5,37 ГБ в 1250 файлов
  • Активные данные: 4,29 ГБ в 1000 файлах (текущая версия таблицы)
  • Вакуумные данные: 805 МБ в 150 файлах (можно восстановить с помощью VACUUM)
  • Данные о путешествии по времени: 268 МБ в 100 файлах (для исторических запросов)