Изменение хранения данных для удаленных таблиц в Snowflake - PullRequest
1 голос
/ 02 апреля 2020

Мы используем Snowflake в качестве складской платформы. При загрузке данных в Snowflake у нас была некоторая выпадающая логика создания для заполнения данных в снежинке. Вместо того, чтобы использовать временную или временную таблицу, мы случайно использовали постоянные таблицы, что привело к огромным размерам хранения как части хранения во времени (близко к 140 tb ).
Так как мы уже удалили постоянные таблицы, они не перечисляют схему снежинки. Хотел проверить, есть ли какой-нибудь способ, которым мы можем изменить срок хранения для уже удаленных таблиц , чтобы мы могли освободить хранилище перемещений во времени, используемое этими удаленными таблицами.
Заранее большое спасибо,
Prasanth

1 Ответ

2 голосов
/ 02 апреля 2020

Если вы не изменили время хранения по умолчанию для путешествия во времени, по умолчанию используется один день. Если это так, вы увидите, что данные начнут очищаться через восемь дней (1 день путешествия во времени + 7 дней безопасности). Если вы не изменили его, вы можете просто оставить его стареть, пока он не будет очищен автоматически. Если вы изменили продолжительность, вы можете попробовать это, чтобы изменить время хранения. Это должно работать.

Если у вас есть новые таблицы со старыми именами удаленных таблиц, вам необходимо временно переименовать новую таблицу. Подробные сведения см. В этой статье базы знаний: Статья базы знаний о путешествиях во времени на удаленных таблицах .

После временного переименования новых таблиц отмените старые таблицы. Затем вы можете установить их сохранение на 0 (на 100% вы этого хотите), а затем удалить таблицу.

undrop MY_TABLE;
alter table MY_TABLE set DATA_RETENTION_TIME_IN_DAYS = 0; 
drop MY_TABLE;

Конечно, когда вы повторно отбрасываете свои старые таблицы, вы можете переименовывать свои новые временные таблицы. на их собственные имена. Хотя это должно сработать, вы не увидите сразу данные о путешествии во времени go. Фоновая служба удалит их в какой-то момент.

...