Hlavní navigace

Názor k článku PostgreSQL 10: drsně rozběhnutý slon od Pavel Stěhule - Určitě není dobrý nápad dělat UPDATE nad polema...

  • Článek je starý, nové názory již nelze přidávat.
  • 10. 10. 2017 19:22

    Pavel Stěhule

    Určitě není dobrý nápad dělat UPDATE nad polema - ty se obvykle připraví externě, nebo v uložených procedurách v proměnných, a pak se insertnou, a tak by měla více méně zůstat. V případě vyhledávání lze použít index, případně lze pole funkcí unnest převést na tabulku. Někdy se bokem uloží min, max z pole, aby se zjednodušily operace a nemuselo se pole pokaždé rozbalovat.

    Samozřejmě, že nemůžu tvrdit a netvrdím, že pole jsou řešením pro každého (je to doporučené řešení, ale ne vždy je to možné použít). Případně, pokud aplikace podporuje zároveň Postgres a zároveň Oracle, tak implementace přes pole být příliš odlišná od Oracle a implementačně neefektivní.

    Tam bohužel pro Vás, Postgres clustrovaný tabulky nemá a neuvažuje se, že by měl - připravují se spíš optimalizace organizace indexů, aby se urychlil UPDATE na řádcích s velkým množstvím indexů. Tady je pak už jediná možnost SSD nebo hodně RAM, čímž se neguje cena za random IO.