Ugodan petak svima! Sve manje vremena ostaje do početka tečaja
U fazi razvoja
U PostgreSQL 10 vidjeli smo rođenje "deklarativnog particioniranja", značajke osmišljene za rješavanje mnogih problema koji su bili nerješivi korištenjem stare metode nasljeđivanja. To je dovelo do puno moćnijeg alata koji nam je omogućio vodoravno dijeljenje podataka!
Usporedba značajki
PostgreSQL 11 predstavlja impresivan skup novih značajki koje pomažu u poboljšanju performansi i čine particionirane tablice transparentnijima za aplikacije.
1. Korištenje ograničavajućih iznimaka
2. Dodaje samo čvorove
3. Samo za particioniranu tablicu koja se poziva na neparticioniranu
4. Indeksi moraju sadržavati sve ključne stupce particije
5. Ograničenja sekcija na obje strane moraju odgovarati
Performanse
I ovdje imamo dobre vijesti! Dodana nova metoda WHERE
. Prethodni algoritam je pak provjeravao svaki odjeljak kako bi utvrdio može li ispuniti uvjet WHERE
. To je rezultiralo dodatnim povećanjem vremena planiranja kako se povećavao broj sekcija.
U 9.6, s particioniranjem putem nasljeđivanja, usmjeravanje torki u particije obično se vršilo pisanjem funkcije okidača koja je sadržavala niz IF izjava za umetanje torki u ispravnu particiju. Te se funkcije mogu vrlo sporo izvršavati. S deklarativnim particioniranjem dodanim u verziji 10, ovo radi mnogo brže.
Koristeći particioniranu tablicu sa 100 particija, možemo procijeniti izvedbu učitavanja 10 milijuna redaka u tablicu s 1 BIGINT stupcem i 5 INT stupaca.
Izvedba postavljanja upita ovoj tablici za pronalaženje jednog indeksiranog zapisa i izvršavanje DML-a za manipuliranje jednim zapisom (koristeći samo 1 procesor):
Ovdje možemo vidjeti da se izvedba svake operacije značajno povećala od PG 9.6. Zahtjevi SELECT
izgledaju mnogo bolje, posebno oni koji mogu isključiti više particija tijekom planiranja upita. To znači da planer može preskočiti mnogo posla koji je prije trebao obaviti. Na primjer, staze se više ne grade za nepotrebne dionice.
Zaključak
Particioniranje tablice počinje postajati vrlo moćna značajka u PostgreSQL-u. Omogućuje vam da brzo prikažete podatke online i prebacite ih offline bez čekanja da se završe spore, masivne DML operacije.. To također znači da se povezani podaci mogu pohraniti zajedno, što znači da se podacima koji su vam potrebni može pristupiti mnogo učinkovitije. Poboljšanja napravljena u ovoj verziji ne bi bila moguća bez programera, recenzenata i komitatora koji su neumorno radili na svim tim značajkama.
Hvala im svima! PostgreSQL 11 izgleda fantastično!
Evo tako kratkog, ali vrlo zanimljivog članka. Podijelite svoje komentare i ne zaboravite se prijaviti za
Izvor: www.habr.com