Не могу сделать копию с удаленного хоста на Redshift Work
-
02-01-2020 - |
Вопрос
У меня есть Gzaked файл на локальной машине и хочу загрузить его в Redshift. Моя команда выглядит так:
\COPY tablename FROM 's3://redshift.manifests/copy_from_yb01_urlinfo.txt' REGION 'us-east-1' CREDENTIALS 'aws_access_key_id=...;aws_secret_access_key=...' SSH GZIP;
.
Но я получаю сообщение "S3: /redshift.manyifests/copy_from_yb01_urlinfo.txt: нет такого файла или каталога".
Но этот файл даже публично: https://s3.amazonaws.com/redshift. Maintesests / copy_from_yb01_urlinfo.txt . Более того, пользователь, чьи учетные данные, которые я использую, имеют полный доступ к S3 и Redshift: http://c2n.me/ieni5l. PNG
И еще более странный - это тот факт, что я мог бы идеально получить доступ к тому файлу с <сильными> теми же учетными данными от AWS CLI:
> aws s3 ls redshift.manifests
2014-08-01 19:32:13 137 copy_from_yb01_urlinfo.txt
.
Как диагностировать это дальше?
На всякий случай, я подключаюсь к моим кластере Redshift через PSQL (PostgreSQL CLI):
PAGER=more LANG=C psql -h ....us-east-1.redshift.amazonaws.com -p 5439 -U ... -d ...
.
Редактировать:
Загруженный файл на S3 - та же ошибка на копии ... И снова я загрузил его и запустил копию с теми же учетными данными.
\COPY url_info FROM 's3://redshift-datafiles/url_info_1.copy.gz' CREDENTIALS 'aws_access_key_id=...;aws_secret_access_key=...' GZIP;
.
Я собираюсь отчаяться ...
Решение 2
О.
Исправление было удаление обратного поля в начале команды. Не могу вспомнить, почему я начал писать это ... на самом деле я уже начал писать его, когда я экспортировал данные из локальной PostgreSQL установки.
Это настолько глупо) одна маленькая резиновая утка могла бы спасти меня день или два.
Другие советы
Поскольку вы пытаетесь скопировать в Redshift с помощью файла манифеста, вам необходимо использовать команду MANIFEST
в конце типа:
\COPY tablename FROM 's3://redshift.manifests/copy_from_yb01_urlinfo.txt' REGION 'us-east-1' CREDENTIALS 'aws_access_key_id=...;aws_secret_access_key=...' SSH GZIP MANIFEST;
.