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

PostgreSQL langsom på et stort bord med arrays og masser af opdateringer

Jeg ville tage et kig på FILLFACTOR til bordet. Som standard er den sat til 100, du kan sænke den til 70 (til at starte med). Herefter skal du lave en VAKUUM FULD for at genopbygge bordet.

ALTER TABLE tablename SET (FILLFACTOR = 70);
VACUUM FULL tablename;
REINDEX TABLE tablename;

Dette giver UPDATE en chance for at placere den opdaterede kopi af en række på samme side som originalen, hvilket er mere effektivt end at placere den på en anden side. Eller hvis din database allerede er noget fragmenteret fra mange tidligere opdaterede, kan den allerede være sparsom nok. Nu har din database også mulighed for at lave VARME opdateringer, forudsat at den kolonne, du opdaterer, ikke er involveret i noget indeks.



  1. Sådan sender du e-mail fra MySQL 5.1

  2. Konverter MySql DateTime-stempel til JavaScripts Datoformat

  3. Hvordan SYSDATE() virker i MariaDB

  4. Sådan undgår du tabelmutationsfejl