Použitá verzia PostgreSQL

Pokiaľ je databázový server PostgreSQL použitý pre potreby archívu, odporúčame použiť verziu PostgreSQL 9.5 a vyššiu. Tieto verzie podporujú príkaz UPSERT a umožňujú nastaviť parameter archívu Upsert na hodnotu 1.

Nastavenia PostgreSQL 

V konfiguračnom súbore postgresql.conf odporúčame zmeniť nasledovné nastavenia. Numerické hodnoty sú orientačné a je možné ich ladiť - optimálne hodnoty závisia na záťaži archívu, dostupnej pamäti a pod.

shared_buffers = 256MB

Parameter shared_buffers udáva veľkosť pamäte, ktorá bude dedikovaná PostgreSQL serveru na cachovanie dát.

work_mem = 16MB

Parameter work_mem udáva veľkosť pamäte, ktorú bude PostgreSQL používať na operácie triedenia dát.

maintenance_work_mem = 128MB

Parameter maintenance_work_mem udáva veľkosť pamäte, ktorú bude PostgreSQL používať na operácie údržby (VACUUM a iné). Pokiaľ aplikácia používa štruktúrované archívy, ktoré obsahujú veľa dát, väčšie množstvo pridelenej pamäte údržbu zrýchli.

synchronous_commit = off

Parameter synchronous_commit nastavený na hodnotu off spôsobí, že operácia COMMIT nebude vyžadovať synchronizáciu dát na diskoch, takže sa vykoná rýchlejšie.

checkpoint_completion_target = 0.9

Parameter checkpoint_completion_target nastavený na hodnotu 0.9 spôsobí rovnomernejšie rozloženie zápisových operácií na disk pri checkpointe ako prednastavená hodnota 0.5.

effective_cache_size = 1000MB

Parameter effective_cache_size udáva, koľko voľnej pamäte použiteľnej na cachovanie dát v súboroch má operačný systém. Tento parameter je používaný pri odhadoch pre PostgreSQL plánovač dotazov. Na platforme Windows odporúčame pozrieť hodnotu "System Cache" resp. hodnotu "Cached" v rámci "Physical Memory" v Task Manageri na záložke Performance.

autovacuum_vacuum_threshold = 100000

Parameter autovacuum_vacuum_threshold udáva, po akom množstve zmenených alebo vymazaných riadkov sa spustí nad tabuľkou operácia VACUUM.

autovacuum_analyze_threshold = 100000

Parameter autovacuum_analyze_threshold udáva, po akom množstve vložených, zmenených alebo vymazaných riadkov sa spustí nad tabuľkou operácia ANALYZE.

max_locks_per_transaction = 1000

Parameter max_locks_per_transaction udáva množstvo zámkov použitých jednou databázovou transakciou. Táto hodnota by mala byť väčšia alebo rovná parametru archívu CommitCountActive / CommitCountPassive.

Nastavenia archívu

Odporúčame nastaviť parameter archívu Upsert na hodnotu 1. Toto nastavenie zapína použitie príkazu UPSERT, ktorý bol implementovaný v PostgreSQL 9.5. Nastavenie vyžaduje korektné nastavenie ODBC parametrov, ktoré je popísané v nasledovnej časti.

Nastavenia archívneho ODBC

Na pripojenie k PostgreSQL sa používa ODBC ovládač k PostgreSQL, konkrétne jeho Unicode verzia. Odporúčané je použiť ovládač minimálne verzie 09.06.0500.

Pre optimálny výkon odporúčame v rozšírených nastaveniach dátového zdroja (DSN) archívu zvýšiť veľkosť cache na 10000:

Na ďalšej stránke rozšírených nastavení DSN archívu je pre správne fungovanie archívu potrebné nastaviť Level of rollback on errors na Transaction a zapnúť Server side prepare:

 


Napíšte komentár