Use drv = Redshift() instead of drv = Postgres() to connect to an AWS Redshift cluster. All methods in RPostgres and downstream packages can be called on such connections. Some have different behavior for Redshift connections, to ensure better interoperability.
class
Redshift()## S4 method for signature 'RedshiftDriver'dbConnect( drv, dbname =NULL, host =NULL, port =NULL, password =NULL, user =NULL, service =NULL,..., bigint = c("integer64","integer","numeric","character"), check_interrupts =FALSE, timezone ="UTC")
Arguments
drv: DBI::DBIDriver . Use Postgres() to connect to a PostgreSQL(-ish) database or Redshift() to connect to an AWS Redshift cluster. Use an existing DBI::DBIConnection object to clone an existing connection.
dbname: Database name. If NULL, defaults to the user name. Note that this argument can only contain the database name, it will not be parsed as a connection string (internally, expand_dbname is set to false in the call to list("PQconnectdbParams()")).
host, port: Host and port. If NULL, will be retrieved from PGHOST and PGPORT env vars.
bigint: The R type that 64-bit integer types should be mapped to, default is bit64::integer64 , which allows the full range of 64 bit integers.
check_interrupts: Should user interrupts be checked during the query execution (before first row of data is available)? Setting to TRUE allows interruption of queries running too long.
timezone: Sets the timezone for the connection. The default is "UTC". If NULL then no timezone is set, which defaults to the server's time zone.