У меня есть внутренние данные стадии в DEV (снежинка), но я хочу переместить то же самое в PROD, не загружая снова из источника (не хочу снова использовать PUT) - PullRequest
1 голос
/ 15 апреля 2020

Пример:

use role abc;
use warehouse xyz;
use database DEV;
use schema foo;

list @user/table_name/000000_0.csv.part.00.gz (internal stage file uploaded using PUT into DEV database)

НО, я хочу переместить этот внутренний этап из базы данных DEV в базу данных PROD. Я погуглил, но внутреннее движение кажется невозможным в SF ... какой-нибудь альтернативный способ сделать это? У меня огромные ТБ данных, загруженных на стадии разработки.

Как мне добиться этого в снежинке?

Ответы [ 2 ]

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

Нет команды для перемещения файлов на управляемой стадии Снежинки внутри. Вам нужно будет получить файлы во временную папку из Snowflake и перенести их на новый уровень.

Вы можете переместить данные с одного внутреннего этапа на другой этап, выполнив COPY INTO таблицу переходных процессов (любой тип таблицы работает, но переходный процесс не будет иметь времени путешествуйте, что вам не нужно для этого), а затем выполните КОПИРОВАТЬ В новый этап.

Файлы не будут такими же, как оригинал. Хотя они будут иметь одинаковые строки, они могут содержать различное количество строк в файле и разные порядки строк. Вы также ограничены в типах файлов, которые можно использовать при выполнении копирования в сцену - CSV, Parquet и JSON.

https://docs.snowflake.com/en/sql-reference/sql/copy-into-location.html

0 голосов
/ 15 апреля 2020

а чего вы пытаетесь достичь в итоге? Потому что вы можете просто переместить загруженные данные (при условии, что c они находятся в одном и том же развертывании).

Snowflake также позволяет выполнять клонирование в 0 копий, что является очень приятной функцией, но я не уверен, что это именно то, что подходит для сценария разработки / разработки: https://docs.snowflake.com/en/sql-reference/sql/create-clone.html

...