PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Großes data.frame in PostgreSQL mit R speichern

Können Sie den Datenrahmen in eine CSV- oder tabulatorgetrennte Textdatei kopieren und diese dann mit dem COPY FROM-Befehl [1] in PostgreSQL laden? Dadurch wird ein Bulk-Load-Ansatz implementiert, der möglicherweise schneller ausgeführt wird.

In einigen Fällen kann es möglich sein, ein RScript zu verwenden, um die Daten als Stream auszugeben und direkt in psql:

zu leiten
<RScript output tab delmited rows> | psql -c "COPY <tablename> (columnlist, ...) FROM STDIN WITH (FORMAT text)"

In einigen lang andauernden Fällen setze ich | PV | in der Mitte, um den Fortschritt zu verfolgen (http://www.ivarch.com/programs/pv. shtml ).

[1] http://www.postgresql.org/docs/ current/interactive/sql-copy.html