Недавно мы начали использовать хранилище данных Snowflake в нашем проекте и столкнулись с проблемой. Скрипты создания таблиц и представлений были загружены в Git-репозиторий и выполнены через Jenkins. Для любого обновления (добавления или удаления столбцов) сценариев создания таблиц в снежинке, мы должны были удалить и воссоздать таблицы в снежинке. Это вызывает потерю данных из таблиц, что нежелательно.
Каждый раз, когда мы удаляем и воссоздаем таблицы, данные теряются, и нам приходилось вручную загружать все данные во вновь созданные таблицы. Это занимает много времени и вызывает нежелательные простои.
Наши сценарии создания таблиц являются общими для всех сред и были ранее разработаны для HIVE. То же самое было распространено на снежинки, и мы сталкиваемся с проблемами только при любых изменениях схемы в основных таблицах снежинок.
Команда ALTER также не решает нашу проблему, когда мы добавляем новые столбцы в таблицы. Я ищу любой инструмент или процесс, который может развернуть изменения в таблицах или изменить таблицы без удаления базовых данных.
Я рассмотрел средство моделирования данных для разработчиков Oracle SQL (SDDM) после ознакомления с документацией по Snowflake, но не смог найти какого-либо правильного способа изменить уже созданные таблицы. Все, что я нашел, это как подключиться к снежинке из инструмента и выполнить импорт оттуда. Несколько других инструментов, таких как Sqitch и Dataedo, были упомянуты в цепочке документации по снежинкам, но, похоже, они не отвечают моим требованиям.
Ссылка на сообщество документации снежинок приведена ниже.
https://snowflakecommunity.force.com/s/question/0D50Z00007v6qQbSAI/what-schema-management-tools-are-there-for-snowflake
Может ли кто-нибудь предложить какие-либо инструменты или процессы для решения моей проблемы. заранее спасибо