Как записать таблицы в Panoply, используя R PostgreSQL? - PullRequest
0 голосов
/ 18 февраля 2020

Я пытаюсь записать таблицу в мое хранилище данных, используя пакет RPostgreSQL

library(DBI)
library(RPostgreSQL)

pano = dbConnect(dbDriver("PostgreSQL"),
                 host = 'db.panoply.io',
                 port = '5439',
                 user = panoply_user,
                 password = panoply_pw,
                 dbname = mydb)

RPostgreSQL::dbWriteTable(pano, "mtcars", mtcars[1:5, ])

Я получаю эту ошибку:

Error in postgresqlpqExec(new.con, sql4) : 
  RS-DBI driver: (could not Retrieve the result : ERROR:  syntax error at or near "STDIN"
LINE 1: ..."hp","drat","wt","qsec","vs","am","gear","carb" ) FROM STDIN
                                                                  ^
)

Приведенный выше код записывает в Panoply в виде строки 0, 0 байтов. Кажется, что столбцы правильно введены в Panoply, но больше ничего не появляется.

1 Ответ

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

Самое большое и важное красное смещение <> postgresql.

Redshift не использует загрузчик Postgres. (поэтому стандартный ввод НЕ разрешен).

Существует множество доступных опций, которые вы должны выбрать в зависимости от ваших потребностей, особенно учитывая объем данных.

При большом объеме данных вы должны писать в Сначала s3, а затем используйте команду копирования красного смещения. Есть много вариантов, посмотрите на https://github.com/sicarul/redshiftTools

для небольшого объема см. вставка нескольких записей одновременно в Redshift с R

...