db.dobo.sk

Postgres – všetko, čo si chcel vedieť, ale bál sa spýtať svojho seniora, aby si nevypadal ako jelito 19. storage, pages, TOAST.

bez komentárov

Postgres ukladá data do datafiles v adresári databázy, a to pre každú tabuľku a index zvlášť datafile. Defaultne je veľkosť file 1GB, dá sa zmeniť pri inicializácii DB (SEGSIZE). Datafiles sú delené na pages, resp. blocks, každý ma defaultne 8KB (8192 B), dá sa meniť pri kompilácii:
./configure –with-blocksize=<size in kB>
SELECT current_setting(‘block_size’);

ďalej

píše: ďobo

July 30th, 2024 o 2:06 pm

chlievik: mimo

Postgres – všetko, čo si chcel vedieť, ale bál sa spýtať svojho seniora, aby si nevypadal ako jelito 18. OID, relfilenode.

bez komentárov

OID je interný identifikátor entity v postgrese. V rámci pg_class identifikuje relačné entity (table like). ďalej

píše: ďobo

March 11th, 2024 o 2:50 pm

chlievik: mimo

Postgres – všetko, čo si chcel vedieť, ale bál sa spýtať svojho seniora, aby si nevypadal ako jelito 16. Indexy.

bez komentárov

Prehľad a komentár k indexom v Postgrese. ďalej

píše: ďobo

February 24th, 2023 o 6:16 pm

chlievik: postgresql

Postgres – všetko, čo si chcel vedieť, ale bál sa spýtať svojho seniora, aby si nevypadal ako jelito 18. Veľkosť databází a datových fajlov.

1 komentár

Zaujímavý problém, ktorý riešil v práci môj kolega. ďalej

píše: ďobo

October 19th, 2022 o 2:47 pm

chlievik: postgresql

Postgres – všetko, čo si chcel vedieť, ale bál sa spýtať svojho seniora, aby si nevypadal ako jelito 17. MVCC

bez komentárov

Tento prehlad je excerpt z tohoto kratkeho clanku a z tohto dlheho clanku. ďalej

píše: ďobo

October 13th, 2022 o 2:27 pm

chlievik: mimo

Postgres – všetko, čo si chcel vedieť, ale bál sa spýtať svojho seniora, aby si nevypadal ako jelito 15. OOM killer.

bez komentárov

OOM killer je štandardná linuxová vec v managemente pamäte. Vzhľadom na to, že linux používa virtual memory a má necnosť, že dovoľuje alokovať aplikácii viac pamäte, než má k dispozícii (overcommit), občas je nutné nejaký proces odstreliť, keď pamäť dôjde. Ovšem postgres má tú vlastnosť, že ak sa odstrelí čo jen 1 process SIGKILLom (napr. nejaký enormný dotaz), tak sa porúča celý cluster, ktorý nevie, v akom stave sú datové buffers. Ergo OOM killer na postgres je veľký špatný…

ďalej

píše: ďobo

February 15th, 2022 o 3:36 pm

chlievik: linux

docker – jak, co, kde, ako…

2 komentárov

Filosoficky uvod.  Dnes je kontajnerizacia velke hype a Docker je velkym standardom, ale: primarne bol vyvinuty a urceny vyvojarom, pre rychlu a standardizovanu cestu nasadenia “VM”. Pre produkciu to nebolo moc urcene, pokial clovek nepouziva nejaky framework typu K8s – napr. samotna dokerizacia neriesi HA a podobne. Tudiz skutocnou vyhodou Dockeru je len rychle standardizovane nasadenie nejakeho prostredia…

Druhou velkou filosofickou vecou je, ze Docker images/kontajners su urcene ako static – dockerfile predpisuje ich stav a zmenovost (napr. datafily a pod.) nie su priamo v kontajneri ziaduce. Preto je dolezite pre data, ktore maju byt pritomne aj po likvidacii kontajneru, separatnu vlastnu volumu.

ďalej

píše: ďobo

November 11th, 2021 o 10:40 pm

chlievik: docker

Postgres – vsetko, co si chtel vediet, ale bal sa spytat svojho seniora, aby si nevypadal ako jelito 13. Query processing.

3 komentárov

Spracovanie SQL dotazov je jednou z najkomplikovanejších vecí vôbec. U postgresu neni možné používať hinty a optimalizátor dotazov je cost-based. ďalej

píše: ďobo

March 30th, 2021 o 10:11 am

chlievik: postgresql

Postgres – vsetko, co si chtel vediet, ale bal sa spytat svojho seniora, aby si nevypadal ako jelito 12. Django.

1 komentár

Vývoj na Djangu je dnes už evergreenom a tak si urobím pár poznámok (pre niekoho možno triviálnych, ale ja sa k tomu dostávam sporadicky a preto potrebujem pár základných poznámok k architektúre a tak). ďalej

píše: ďobo

November 24th, 2020 o 11:11 pm

chlievik: django,postgresql

Postgres – vsetko, co si chtel vediet, ale bal sa spytat svojho seniora, aby si nevypadal ako jelito 11. TimescaleDB.

bez komentárov

TimescaleDB je standardna ekstnsna postgresu, tak ako ine extensny. Je zamerana na zbieranie time-series dat a to velkych dat (typicky zo senzorov). Zvonku je pri pohlade na Postgres transparentna, je to skor sposob, akym enginom Postgres bude ukladat rady casovych dat. Preco ju pouzivat je pekne vysvetlene tu. ďalej

píše: ďobo

November 16th, 2020 o 11:54 am

chlievik: postgresql