Снежинка: разделение данных от AWS США до AWS Австралии - PullRequest
1 голос
/ 14 февраля 2020

В SNOWFLAKE db содержится 10 ТБ данных в AWS регионе США. Требуется разделить подмножество данных с определенным флагом в столбце на AWS регион Австралии.
После разделения данные по США будут около 6 ТБ, а Австралия - около 4 ТБ. Есть 10 приложений, содержащих эту смесь данных. Я мог бы придумать 3 варианта сделать это разделение.

1. Реплицируйте всю базу данных от A до B. Затем приостановите приложение, прежде чем прерывать репликацию. В B удалите данные в базе данных B, где фильтр - это данные A. В A повторите удаление, где фильтр - это данные B. Приложение-клон установите и настройте новый набор для чтения / записи в B

2. Используйте CTAS в B с данными из A

3. Используйте SSIS для передачи sh данных из А в В. Для этого варианта приложение не нужно останавливать.

Пожалуйста, сообщите об этих параметрах и, если есть / есть варианты, в которых эти данные разделение может быть достигнуто.

С уважением, Мани

1 Ответ

0 голосов
/ 14 февраля 2020

Полная настройка того, как эти 10 приложений обращаются к вашей таблице снежинок, неясна, но важно предоставить решение.

Лучший способ синхронизировать данные c между двумя учетными записями снежинок - использовать отработку отказа репликации базы данных: https://docs.snowflake.net/manuals/user-guide/database-replication-failover.html

Разделить данные на основе поля можно легко с помощью материализованных представлений, у которых есть предложение where, содержащее это поле. https://docs.snowflake.net/manuals/user-guide/views-materialized.html

...