Есть ли лучший способ обновить схему таблиц в хранилище данных Snowflake, не удаляя существующие таблицы?

Недавно мы начали использовать хранилище данных Snowflake в нашем проекте и столкнулись с проблемой. Скрипты создания таблиц и представлений были загружены в Git-репозиторий и выполнены через Jenkins. Для любого обновления (добавления или удаления столбцов) сценариев создания таблиц в снежинке, мы должны были удалить и воссоздать таблицы в снежинке. Это вызывает потерю данных из таблиц, что нежелательно.

Каждый раз, когда мы удаляем и воссоздаем таблицы, данные теряются, и нам приходилось вручную загружать все данные во вновь созданные таблицы. Это занимает много времени и вызывает нежелательные простои. Наши сценарии создания таблиц являются общими для всех сред и были ранее разработаны для HIVE. То же самое было распространено на снежинки, и мы сталкиваемся с проблемами только при любых изменениях схемы в основных таблицах снежинок.

Команда ALTER также не решает нашу проблему, когда мы добавляем новые столбцы в таблицы. Я ищу любой инструмент или процесс, который может развернуть изменения в таблицах или изменить таблицы без удаления базовых данных.

После изучения документации Snowflake я рассмотрел средство моделирования данных разработчика Oracle SQL (SDDM), но не смог найти подходящий метод для изменения уже созданных таблиц. Все, что я нашел, это как подключиться к снежинке из инструмента и выполнить импорт оттуда. Несколько других инструментов, таких как Sqitch и Dataedo, были упомянуты в цепочке документации по снежинкам, но, похоже, они не отвечают моим требованиям.

Ссылка на сообщество документации снежинок приведена ниже. https://snowflakecommunity.force.com/s/question/0D50Z00007v6qQbSAI/what-schema-management-tools-are-there-for-snowflake

Может ли кто-нибудь предложить какие-либо инструменты или процесс, чтобы решить мою проблему. заранее спасибо

0 ответов

Предполагая, что вы хотите автоматизировать создание операторов Snowflake Alter Table, вы можете взглянуть на FlywayDB. Он поддерживает запись изменений DDL для Snowflake как в бесплатной, так и в платной версии. Его разработала компания Redgate, имеющая долгую историю сравнений и миграций схем SQL Server.

Другие вопросы по тегам