Lai visiem lieliska piektdiena! Līdz kursa sākumam paliek arvien mazāk laika
Attīstības stadijā
Operētājsistēmā PostgreSQL 10 mēs redzējām “deklaratīvas sadalīšanas” dzimšanu — līdzekli, kas izstrādāts, lai atrisinātu daudzas problēmas, kuras nebija atrisināmas, izmantojot veco mantojuma metodi. Tas radīja daudz jaudīgāku rīku, kas ļāva mums sadalīt datus horizontāli!
Funkciju salīdzinājums
PostgreSQL 11 ievieš iespaidīgu jaunu funkciju kopumu, kas palīdz uzlabot veiktspēju un padara sadalītās tabulas pārskatāmākas lietojumprogrammām.
1. Ierobežojošo izņēmumu izmantošana
2. Pievieno tikai mezglus
3. Tikai sadalītai tabulai, kas atsaucas uz nesadalītu tabulu
4. Indeksos jāsatur visas nodalījuma galvenās kolonnas
5. Sadaļu ierobežojumiem abās pusēs ir jāsakrīt
Производительность
Arī šeit mums ir labas ziņas! Pievienota jauna metode WHERE
. Iepriekšējais algoritms savukārt pārbaudīja katru sadaļu, lai noteiktu, vai tā atbilst nosacījumam WHERE
. Tas izraisīja papildu plānošanas laika pieaugumu, palielinoties sadaļu skaitam.
Programmā 9.6, izmantojot sadalīšanu, izmantojot mantošanu, kortežu maršrutēšana nodalījumos parasti tika veikta, ierakstot trigera funkciju, kas saturēja virkni IF priekšrakstu, lai ievietotu korešu pareizajā nodalījumā. Šo funkciju izpilde var būt ļoti lēna. Ja 10. versijā ir pievienota deklaratīvā sadalīšana, tas darbojas daudz ātrāk.
Izmantojot sadalītu tabulu ar 100 nodalījumiem, mēs varam novērtēt veiktspēju, ielādējot 10 miljonus rindu tabulā ar 1 BIGINT kolonnu un 5 INT kolonnām.
Vaicājumu veikšana šajā tabulā, lai atrastu vienu indeksētu ierakstu un izpildītu DML, lai manipulētu ar vienu ierakstu (izmantojot tikai 1 procesoru):
Šeit mēs redzam, ka katras darbības veiktspēja ir ievērojami palielinājusies kopš PG 9.6. Pieprasījumi SELECT
izskatās daudz labāk, īpaši tie, kas vaicājuma plānošanas laikā spēj izslēgt vairākus nodalījumus. Tas nozīmē, ka plānotājs var izlaist daudz darba, kas tam būtu bijis jāpaveic iepriekš. Piemēram, vairs netiek būvēti celiņi nevajadzīgiem posmiem.
Secinājums
Tabulu sadalīšana sāk kļūt par ļoti jaudīgu līdzekli PostgreSQL. Tas ļauj ātri parādīt datus tiešsaistē un izmantot tos bezsaistē, negaidot lēnu, masīvu DML darbību pabeigšanu.. Tas nozīmē arī to, ka saistītos datus var glabāt kopā, kas nozīmē, ka nepieciešamajiem datiem var piekļūt daudz efektīvāk. Šajā versijā veiktie uzlabojumi nebūtu iespējami bez izstrādātājiem, recenzentiem un izstrādātājiem, kuri nenogurstoši strādāja pie visām šīm funkcijām.
Paldies viņiem visiem! PostgreSQL 11 izskatās fantastiski!
Šeit ir tik īss, bet diezgan interesants raksts. Dalieties savos komentāros un neaizmirstiet reģistrēties
Avots: www.habr.com