sql >> Database teknologi >  >> RDS >> PostgreSQL

Tuning af Postgresql-ydeevne og hukommelsesbrug i en python-arbejdsgang

Min løsning er at dele putback med en simpel funktion som foreslået her :

def chunk(l, n):
    n = max(1, n)
    return [l[i:i + n] for i in range(0, len(l), n)]

og derefter

for chunk in chunk(putback, 250000):
    curs.execute("UPDATE table1
                  SET col3 = p.result
                  FROM unnest(%s) p(sid INT, result JSONB)
                  WHERE sid = p.sid", (chunk,))

Dette virker, dvs. holder hukommelsesfodaftrykket i skak, men er ikke særlig elegant og langsommere end at dumpe alle data på én gang, som jeg plejer.




  1. skabe dynamiske Div-tags til AJAX-PHP-MySQL-genereret tabel

  2. Sammenligner Amazon RDS Point-in-Time Recovery med ClusterControl

  3. Sådan udføres skemaændringer i MySQL &MariaDB på en sikker måde

  4. Hvordan opretter jeg forbindelse til PostgreSQL uden at angive et databasenavn?