Subprozess gegen Asyncio für asynchrone PostgreSQL -AbfragenPython

Python-Programme
Anonymous
 Subprozess gegen Asyncio für asynchrone PostgreSQL -Abfragen

Post by Anonymous »

Ich möchte eine Reihe von Vorgängen in einer PostgreSQL -Datenbank ausführen. Diese Operationen führen eine Auswahl auf einer Tabelle aus und fügen die resultierenden Zeilen in eine neue Tabelle ein, die Primärschlüssel aufweist, wobei Zeilen ignoriert werden, die gegen die primären Schlüsselbeschränkungen verstoßen. Es gibt eine große Anzahl großer Tabellen in der Datenbank, und es scheint, dass diese Art von Aufgabe asynchron ausgeführt werden sollte.

Es ist mir einzuschlagen, dass eine Möglichkeit, dies zu tun, das Subprozess -Modul in Python verwenden würde, um Bash -Skripte auszuführen, die diese Operationen ausführen, wobei etwas wie subprocess.popen verwendet wird. Ich kann viele Terminalsitzungen öffnen und parallele Abfragen ausführen. Nach meinem Verständnis ist dies dies nachahm, dies imitieren. < /p>

, um ein Beispiel von hier auszuleihen: < /p>

Code: Select all

from subprocess import Popen, PIPE
import glob

f_list = glob.glob('./*bz2')
cmds_list = [['./bunzip2_file.py', file_name] for file_name in f_list]
procs_list = [Popen(cmd, stdout=PIPE, stderr=PIPE) for cmd in cmds_list]
for proc in procs_list:
proc.wait()
< /code>

Meine Fragen sind: < /p>

[list]
[*]  Gibt es offensichtliche Probleme beim Aufrufen vieler Postgres -Abfragen mit Subprozess < /code>? 
[*]  Unter welchen Umständen kann ich stattdessen Asyncio 
in Betracht ziehen? Bietet es Vorteile der oben diskutierten Methode?
[/list]

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post