Using dbReadTableArrow seems to be much slower than the standard dbReadTable.
table <- DBI::Id(schema = "...", table = "...")
conn <- odbc::dbConnect(
drv = odbc::odbc(),
.connection_string = "..."
)
system.time(DBI::dbReadTableArrow(conn, table))
system.time(DBI::dbReadTable(conn, table))
> system.time(DBI::dbReadTableArrow(conn, table))
user system elapsed
1.623 0.020 1.757
> system.time(DBI::dbReadTable(conn, table))
user system elapsed
0.706 0.005 0.727
Note: this is from a SAP HANA database, connected via their odbc driver libodbcHDB.so.