Лучший способ занять место стола снежинкой

Мой текущий запрос на получение табличного пространства, занятого таблицами в SAMPLE_DB, выглядит следующим образом: использовать роль accountadmin; использовать схему snowflake.INFORMATION_SCHEMA;

SELECT  
   table_name, 
   sum(active_bytes)
 FROM   "INFORMATION_SCHEMA".table_storage_metrics 
  where TABLE_CATALOG in ('SAMPLE_DB') group by table_name;

Вопрос: нужно ли мне также узнать сумму TIME_TRAVEL_BYTES FAILSAFE_BYTES, чтобы получить общее пространство для каждой таблицы в SAMPLE_DB?


person Regina Frenkel    schedule 04.01.2021    source источник
comment
Я думаю, вам нужны все 3, да, если вы хотите знать общий объем хранилища, который использует эта таблица. Если вы хотите увидеть активный размер таблицы, достаточно active_bytes.   -  person Mike Walton    schedule 04.01.2021


Ответы (1)


Да - плюс вам нужно будет включить RETAINED_FOR_CLONE_BYTES, если это актуально для нас

person NickW    schedule 04.01.2021
comment
Я думаю, что большинство людей сочли бы эти байты связанными с клоном, а не с исходной таблицей. - person Mike Walton; 04.01.2021
comment
Честная оценка. Я думаю, это зависит от того, чего именно пытается достичь вопрошающий. Если вы не включите это хранилище в родительскую таблицу, тогда, если у вас было несколько клонов, вы могли бы дважды подсчитать его, если свяжетесь с клонами - я полагаю? - person NickW; 05.01.2021
comment
да - это зависит от того, ищете ли вы хранилище таблицы или пытаетесь выделить все хранилище для правильной таблицы. Ответ другой из-за клонирования, и его очень сложно выделить, когда у вас есть несколько клонов в разные моменты времени. - person Mike Walton; 05.01.2021