db.dobo.sk

výber z kategórie postgresql

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. viac

píše: ďobo

March 30th, 2021 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). viac

píše: ďobo

November 24th, 2020 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ára

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. viac

píše: ďobo

November 16th, 2020 11:54 am

chlievik: postgresql

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

bez komentára

Narozdiel od obecneho zvyku rozdelovat pristupy medzi userov a grupy (roly) a la Oracle, postgres to ma jednoduche: v zasade existuje len rola (ROLE), ktora moze byt zapuzdrovana do inych roli. Prikaz CREATE USER a CREATE GROUP su len aliasom ku komandu CREATE ROLE. Malym rozdielom je, ze v pripade CREATE USER je uzivatel vytvoreny automaticky s privilegiom LOGIN, zatailco u CREATE ROLE nie. Konzekventne prikaz SELECT * FROM PG_USER; ukaze len userov, ktori sa mozu lognut, zatialco SELECT * FROM PG_ROLES; ukaze absolutne vsetkych userov. viac

píše: ďobo

September 17th, 2020 2:24 pm

chlievik: postgresql

pingovanie/telnetovanie listu hostov na specifickom porte

1 komentár

Fping OK, telnet OK, ale ako to robit, ked je ICMP zakazany a telnet je pre zoznam hostov nepouzitelny (hned na prveho sa pripoji a co potom) a potrebujem overit dostupnost na specifickom porte. Nastastie tu je /dev/tcp/ viac

píše: ďobo

July 27th, 2020 8:55 pm

chlievik: linux,postgresql

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

bez komentára

Pgbouncer je koneksn pooler, pretoze postgres nativne nema tuto vlastnost a mnoho koneksii do DB moze viest k vycerpaniu pamati, ale dosiahnutiu max_connections v Postgres konfe a odmietnutiu sluzby. Skvele zdovodnenie pouzitia pgbounceru so zaujimavou diskusiou je tu. Vseobecne sa da povedat, ze mnozstvo klientov snaziacich sa pripojit, sa stava nepodstatnym, pretoze pgbouncer ich supne do poolu u seba a postupne pusta k databaze. Mnozstvo konnesn do DB je naopak nutne obozretne konfigurovat.

viac

píše: ďobo

July 20th, 2020 4:03 pm

chlievik: postgresql

postgres klienti – jak rucne vyextrahovat

bez komentára

Dnes som v praci riesil taku picovinku, ktoru si poznamenavam, ak by som to o pol roku zase potreboval. Ukol znel jasne: dve davky. Potrebujem 1. zoznam vsetkych, ktori sa za den pripojovali k DB a parametry tohto spojenia 2. zoznam ich hostnamov viac

píše: ďobo

June 23rd, 2020 10:25 pm

chlievik: postgresql

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

2 komentárov

Sesny su konexie do DB. Ked sa user/appka prihlasi do postgresu, master daemon sa forkne a vytvori novy backend proces. Sesna je vzdy jeden proces s vlastnym PIDom a standardna koneksna vyzerie priemerne tak 10MB pamate. viac

píše: ďobo

December 31st, 2019 11:10 am

chlievik: postgresql

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

6 komentárov

Replikacie zabezpecuju:

  1. HA (high availability; vypadok jedneho serveru), alebo
  2. LB (load balancing; rozlozenie zataze)

Je mozne to implementovat roznymi sposobmi (tu je kompletny prehlad, ja sa zaoberam len 2 najcastejsimi sposobmi), vynikajuci prehlad moznych replikacnych topologii je uvedeny tu. Replikovat je mozne synchronne a asynchronne – je to vzdycky deal medzi konzistenciou dat a vykonom. Co znamena synchronny? Znamena konzistenciu dat medzi replikovanymi nodmi – v pripade synchronneho zapisu master vzdy caka na potvrdenie, ze slave data tiez zapisal a len potom ich zapise aj on sam na sebe. Vykonnostne sa samozrejme spotrebuva strojovy cas na “cakanie”. viac

píše: ďobo

December 5th, 2019 10:18 am

chlievik: postgresql

Postgres – vsetko, co si chtel vediet, ale bal sa spytat svojho seniora, aby si nevypadal ako jelito 08. Bezpecnostny audit via ansible.

bez komentára

Dnes som v praci riesil zaujimavy poziadavok – pre vsetky stroje s postgresom dodat auditne informacie obsahujuce data z:

  • konfigurakov serveru a pristupupovych konfigurakov (t.j. postgresql.conf, pg_hba.conf a pg_ident.conf)
  • databazovych userov (t.j. t.j. views pg_shadow a pg_group) viac

píše: ďobo

November 25th, 2019 3:33 pm

chlievik: linux,postgresql