Szép pénteket mindenkinek! Egyre kevesebb idő van hátra a tanfolyam indulásáig
Fejlesztési szakaszban
A PostgreSQL 10-ben megszületett a „deklaratív particionálás”, egy olyan funkció, amelyet számos olyan probléma megoldására terveztek, amelyek a régi öröklési módszerrel megoldhatatlanok voltak. Ez egy sokkal hatékonyabb eszközhöz vezetett, amely lehetővé tette az adatok vízszintes felosztását!
Funkció-összehasonlítás
A PostgreSQL 11 lenyűgöző új funkciókat mutat be, amelyek javítják a teljesítményt és átláthatóbbá teszik a particionált táblákat az alkalmazások számára.
1. Korlátozó kivételek használata
2. Csak csomópontokat ad hozzá
3. Csak particionált táblához, amely nem particionáltra hivatkozik
4. Az indexeknek tartalmazniuk kell a partíció összes kulcsoszlopát
5. A szakaszkorlátozásoknak mindkét oldalon egyeznie kell
termelékenység
Itt is van egy jó hírünk! Új módszer hozzáadva WHERE
. Az előző algoritmus viszont minden szakaszt megvizsgált, hogy eldöntse, megfelel-e a feltételnek WHERE
. Ez a szakaszok számának növekedésével további tervezési időnövekedést eredményezett.
A 9.6-ban az örökléssel történő particionálás esetén a sorok partíciókba irányítása általában egy trigger függvény írásával történt, amely egy sor IF utasítást tartalmazott a leíró beillesztéséhez a megfelelő partícióba. Ezek a funkciók nagyon lassúak lehetnek. A 10-es verzióban hozzáadott deklaratív particionálással ez sokkal gyorsabban működik.
Egy 100 partíciós particionált tábla segítségével értékelhetjük 10 millió sor betöltésének teljesítményét egy 1 BIGINT oszlopot és 5 INT oszlopot tartalmazó táblába.
A tábla lekérdezésének teljesítménye egy indexelt rekord megtalálásához és a DML végrehajtásához egy rekord kezeléséhez (csak 1 processzor használatával):
Itt láthatjuk, hogy az egyes műveletek teljesítménye jelentősen megnőtt a PG 9.6 óta. Kérések SELECT
sokkal jobban néznek ki, különösen azok, amelyek képesek több partíció kizárására a lekérdezés tervezése során. Ez azt jelenti, hogy az ütemező sok olyan munkát kihagyhat, amelyet korábban meg kellett volna tennie. Például már nem építenek utakat a felesleges szakaszokhoz.
Következtetés
A táblaparticionálás kezd egy nagyon hatékony funkcióvá válni a PostgreSQL-ben. Lehetővé teszi az adatok gyors online megjelenítését és offline módba helyezését anélkül, hogy megvárná a lassú, hatalmas DML-műveletek befejezését.. Ez azt is jelenti, hogy a kapcsolódó adatok együtt tárolhatók, vagyis a szükséges adatok sokkal hatékonyabban érhetők el. Az ebben a verzióban végrehajtott fejlesztések nem jöhettek volna létre a fejlesztők, lektorok és elkötelezettek nélkül, akik fáradhatatlanul dolgoztak ezeken a funkciókon.
Köszönet nekik mindannyiuknak! A PostgreSQL 11 fantasztikusan néz ki!
Itt van egy ilyen rövid, de nagyon érdekes cikk. Oszd meg észrevételeidet, és ne felejts el regisztrálni
Forrás: will.com