Загрузка двоичных данных GZIP в столбец в базе данных Snowflake - PullRequest
0 голосов
/ 13 апреля 2020

У меня есть CSV-файл, который имеет два столбца. Первый столбец - это идентификатор, а второй столбец - сжатые двоичные данные GZIP. Я хочу загрузить эту запись в таблицу Snowflake с двумя столбцами id в качестве числового типа данных и bin_text в качестве двоичного типа данных.

Попытка загрузить CSV-файл (вкладка в качестве разделителя) с помощью команды «COPY into», но Сжатые двоичные данные GZIP имеют несколько новых строк, которые Снежинка считает отдельным повторением.

Мне нужно загрузить все сжатые двоичные данные GZIP, имеющие несколько новых строк, в одну запись.

Пожалуйста, помогите .

Структура таблицы - идентификатор в виде числа, compress_data в виде двоичного файла

Например, первая запись - 1, gzip of ("Привет, мир. Это пример снежинки. У меня есть некоторые сомнения, так что пошли для stackoverflow, чтобы очистить сомнения. Проблема состоит в том, чтобы загрузить данные bianry в таблицу снежинок. У меня есть файл CSV, который имеет два столбца. Первый столбец - это идентификатор, а второй столбец - сжатые двоичные данные GZIP. Я хочу загрузить эту запись в таблицу Snowflake с двумя столбцами id в качестве числового типа данных и bin_text в качестве двоичного типа данных. Для загрузки CSV-файла (табуляция в качестве разделителя) с помощью команды «COPY into», но сжатые двоичные данные GZIP имеют несколько новых строк, которые снежинка считает отдельным отчетом. Мне нужно загрузить все сжатые двоичные данные GZIP с несколькими новыми строками в одну запись. ").

Чтобы создать сжатый формат текста, я использую следующую команду:

echo "hello world. This is snowflake example. I am having some doubts so went for stackoverflow to clear the doubts. The issue is to load the bianry data into snowflake table. I have a csv file which has two columns. First Column is an id and second column is the compressed GZIP binary data. I want to load this record into the Snowflake table with having two columns id as number data type and bin_text as binary data type. Tried to load csv file(tab as seperator) with "COPY into" command but the GZIP compressed binary data has a multiple new lines which snowflake considers as seperate recod. I need to load the whole GZIP compressed binary data which has multiple new lines into a single record." | gzip -cf9 | wc -l

эта команда выдает 4 строки в виде сжатых выходных данных. Я хочу сохранить эти 4 строки в виде одной записи.

Выходной файл представляет собой CSV (с разделением табуляцией), хранящийся во внутренней стадии Snowflake.

Использованы параметры команды копирования:

copy into compress
from (
select
t.$1,
t.$2
from <INTERNAL STAGE> t
)
file_format = ( type = csv
field_delimiter='\t' escape_unenclosed_field=none
binary_format=UTF8);
...