Ich schrieb ein Skript in python
, das eine Verbindung zu einer Datenbank unter Verwendung psycopg
herstellt. Ich arbeite mit zwei Tabellen in der gleichen Datenbank. Zuerst führe ich eine select * from table_1
und danach überprüfe ich, ob jede Zeile (fetchone
) einige Anforderungen erfüllt. Wenn dies der Fall ist, wird eine neue Zeile in Tabelle 2 mit einer INSERT
erstellt. Der Code sieht ähnlich wie:Threading innerhalb eines Cursors in psycopg2
cursor_1 = conn.cursor()
cursor_2 = conn.cursor()
cursor_1.execute("SELECT * FROM table_1")
for i in range(1,n):
a = cursor_1.fetchone()
if (condition_in_a):
cursor_2.execute("INSERT into table_2 (f1,f2) values (v1,v2)")
Das Skript läuft in einer sequentiellen for
Schleife und ich wollte wissen, ob es ein besserer Weg, um diese Aufgabe durch psycopg2.pool
in Bezug auf Leistung zu erreichen. Also meine Frage ist: Ist es möglich, einen psycopg
Cursor Multithread? Wenn nicht, was wäre der beste Ansatz, um eine bessere Leistung zu erzielen?
Vielen Dank im Voraus.