Rozšíření PostgreSQL v Azure Database for PostgreSQL – škálovatelné (Citus)
PostgreSQL umožňuje rozšířit funkce databáze přidáním rozšíření. rozšíření umožňují sdružování více souvisejících SQL objektů dohromady do jednoho balíčku, který se dá načíst nebo odebrat z databáze jediným příkazem. Po načtení do databáze rozšíření fungují jako integrované funkce. Další informace o rozšířeních PostgreSQL najdete v tématu věnovaném sbalení objektů souvisejících s rozšířením.
Použití rozšíření PostgreSQL
Aby bylo možné použít rozšíření PostgreSQL, musí být v databázi nainstalovány. Pro instalaci konkrétního rozšíření spusťte příkaz Create Extension z nástroje psql, který načte zabalené objekty do vaší databáze.
Poznámka
Pokud CREATE EXTENSION dojde k chybě s odepřením oprávnění, zkuste create_extension() funkci místo toho. Například:
SELECT create_extension('postgis');
Azure Database for PostgreSQL – Citus () aktuálně podporuje podmnožinu přípon klíčů, jak je uvedeno zde. Jiná rozšíření než ta, která jsou uvedena, nejsou podporována. Pomocí Azure Database for PostgreSQL nemůžete vytvořit vlastní rozšíření.
Rozšíření podporovaná nástrojem Azure Database for PostgreSQL
V následujících tabulkách jsou uvedeny standardní rozšíření PostgreSQL, která jsou aktuálně podporována nástrojem Azure Database for PostgreSQL. Tyto informace jsou také k dispozici v systému SELECT * FROM pg_available_extensions; .
Verze jednotlivých rozšíření nainstalovaných ve skupině serverů se někdy liší v závislosti na verzi PostgreSQL (11, 12 nebo 13). V tabulce jsou uvedeny verze rozšíření na verzi databáze.
Rozšíření Citus
| Linka | Popis | PG 11 | PG 12 | PG 13 | PG 14 |
|---|---|---|---|---|---|
| citus | Distribuovaná databáze Citus | 9,5 | 10.0.5 | 10.2.1 | 10.2.1 |
Datové typy – rozšíření
| Linka | Popis | PG 11 | PG 12 | PG 13 | PG 14 |
|---|---|---|---|---|---|
| citext | Poskytuje znakový typ řetězce bez rozlišení velkých a malých písmen. | 1.5 | 1.6 | 1.6 | 1.6 |
| datov | Poskytuje datový typ pro multidimenzionální datové krychle. | 1.4 | 1.4 | 1.4 | 1.5 |
| hll | Poskytuje strukturu dat HyperLogLog. | 2.15 | 2.15 | 2,16 | 2,16 |
| hstore | Poskytuje datový typ pro ukládání sad párů klíč-hodnota. | 1.5 | 1.6 | 1.7 | 1.8 |
| není | Poskytuje typy dat pro mezinárodní standardy číslování produktů. | 1.2 | 1.2 | 1.2 | 1.2 |
| Lo | Údržba Large Object. | 1.1 | 1.1 | 1.1 | 1.1 |
| ltree | Poskytuje datový typ pro hierarchické struktury podobné stromu. | 1.1 | 1,1 | 1,2 | 1.2 |
| SEG – | Datový typ reprezentující segmenty čar nebo intervaly s plovoucí desetinnou čárkou. | 1.3 | 1.3 | 1.3 | 1.4 |
| tdigest | Datový typ pro akumulaci statistik na základě rozsahu, jako jsou quantiles a oříznutí. | 1.0 | 1.0 | 1.2.0 | 1.2.0 |
| Nejlepší | Zadejte pro JSONB Top-n. | kládají | kládají | 2.4.0 | 2.4.0 |
Rozšíření fulltextového vyhledávání
| Linka | Popis | PG 11 | PG 12 | PG 13 | PG 14 |
|---|---|---|---|---|---|
| dikt _ int | Poskytuje šablonu slovníku vyhledávání textu pro celá čísla. | 1.0 | 1.0 | 1.0 | 1.0 |
| dict _ xsyn | Šablona slovníku vyhledávání textu pro rozšířené zpracování synonym. | 1.0 | 1.0 | 1.0 | 1.0 |
| unaccent | Slovník pro vyhledávání textu, který ze lexemů odebere diakritická znaménka. | 1.1 | 1.1 | 1.1 | 1.1 |
Rozšíření služby Functions
| Linka | Popis | PG 11 | PG 12 | PG 13 | PG 14 |
|---|---|---|---|---|---|
| autoinc (automatické hodnocení) | Funkce pro automatické zmenšování polí | 1.0 | 1.0 | 1.0 | 1.0 |
| earthdistance | Poskytuje způsob, jak vypočítat vzdálenosti ve velkých kroužkech na povrchu Země. | 1.1 | 1.1 | 1.1 | 1.1 |
| fuzzystrmatch | Poskytuje několik funkcí pro určení podobností a vzdálenosti mezi řetězci. | 1.1 | 1.1 | 1.1 | 1.1 |
| vložení _ uživatelského jména | Funkce pro sledování, kdo změnil tabulku | 1.0 | 1.0 | 1.0 | 1.0 |
| intagg (z intagg) | Agregátor a enumerátor celých čísel (zastaralé). | 1.1 | 1.1 | 1.1 | 1.1 |
| pole intarray | Poskytuje funkce a operátory pro manipulaci s poli celých čísel bez hodnoty null. | 1.2 | 1.2 | 1.3 | 1.5 |
| moddatetime | Funkce pro sledování času poslední úpravy. | 1.0 | 1.0 | 1.0 | 1.0 |
| pg _ partman | Spravuje dělené tabulky podle času nebo ID. | 4.5.1 | 4.5.1 | 4.5.1 | 4.5.1 |
| pg _ trgm | Poskytuje funkce a operátory pro určení podobnosti alfanumerického textu na základě porovnávání trigramů. | 1.4 | 1.4 | 1.5 | 1.6 |
| pgcrypto | Poskytuje kryptografické funkce. | 1.3 | 1.3 | 1.3 | 1.3 |
| upřesnění | Funkce pro implementaci referenční integrity (zastaralé) | 1.0 | 1.0 | 1.0 | 1.0 |
| tablefunc | Poskytuje funkce, které manipulují s celými tabulkami, včetně křížové tabulky. | 1.0 | 1.0 | 1.0 | 1.0 |
| tcn (cn) | Aktivované oznámení o změně. | 1.0 | 1.0 | 1.0 | 1.0 |
| timetravel (časové cestování) | Funkce pro implementaci cesty v čase. | 1.0 | |||
| uuid-ossp | Generuje univerzálně jedinečné identifikátory (UUID). | 1.1 | 1.1 | 1.1 | 1.1 |
Rozšíření typů indexů
| Linka | Popis | PG 11 | PG 12 | PG 13 | PG 14 |
|---|---|---|---|---|---|
| Bloom | Metoda přístupu Bloom – index založený na podpisových souborech. | 1.0 | 1.0 | 1.0 | 1.0 |
| btree _ sněhod | Poskytuje ukázkové třídy operátorů FUNKCE, které implementují chování typu B-strom pro určité datové typy. | 1.3 | 1.3 | 1.3 | 1.3 |
| btree _ gist | Poskytuje třídy operátorů indexu GiST, které implementují B-strom. | 1.5 | 1.5 | 1.5 | 1.6 |
Jazyková rozšíření
| Linka | Popis | PG 11 | PG 12 | PG 13 | PG 14 |
|---|---|---|---|---|---|
| plpgsql | Procedurální jazyk, který je možné načíst pomocí PL/pgSQL | 1.0 | 1.0 | 1.0 | 1.0 |
Různá rozšíření
| Linka | Popis | PG 11 | PG 12 | PG 13 | PG 14 |
|---|---|---|---|---|---|
| adminpack | Funkce správy pro PostgreSQL. | 2.0 | 2.0 | 2.1 | 2.1 |
| amcheck | Funkce pro ověření integrity relace | 1,1 | 1,2 | 1.2 | 1.3 |
| odkaz na databázi | Modul, který podporuje připojení k jiným databázím PostgreSQL z databázové relace. Informace o tomto rozšíření postgres_fdw v části dblink and postgres_fdw. | 1.2 | 1.2 | 1.2 | 1.2 |
| soubor _ fdw | Obálka cizích dat pro přístup k plochým souborům. | 1.0 | 1.0 | 1.0 | 1.0 |
| kontrola stránky | Prohlédněte si obsah stránek databáze na nízké úrovni. | 1.7 | 1.7 | 1.8 | 1.9 |
| pg _ buffercache | Poskytuje způsob, jak v reálném čase zkoumat, co se děje ve sdílené mezipaměti vyrovnávací paměti. | 1.3 | 1.3 | 1.3 | 1.3 |
| PG _ cron | Plánovač úloh pro PostgreSQL. | 1.3 | 1.3 | 1.3 | 1.4 |
| PG _ freespacemap | Projděte si mapu volného místa (FSM). | 1.2 | 1.2 | 1.2 | 1.2 |
| zahřívání na str _ | Poskytuje způsob, jak načíst data relace do mezipaměti vyrovnávací paměti. | 1.2 | 1.2 | 1.2 | 1.2 |
| _příkazy pg stat _ | poskytuje způsob sledování statistik provádění všech příkazů SQL provedených serverem. Informace o tomto rozšíření najdete v části "pg_stat_statements". | 1.6 | 1.7 | 1.8 | 1.9 |
| _viditelnost stránky | Projděte si informace o viditelnosti mapy viditelnosti (VM) a na úrovni stránky. | 1.2 | 1.2 | 1.2 | 1.2 |
| pgrowlocks | Poskytuje způsob zobrazení informací o uzamykání na úrovni řádků. | 1.2 | 1.2 | 1.2 | 1.2 |
| pgstattuple | Poskytuje způsob zobrazení statistik na úrovni řazené kolekce členů. | 1.5 | 1.5 | 1.5 | 1.5 |
| Postgres _ FDW | Obálka cizích dat slouží k přístupu k datům uloženým na externích PostgreSQL serverech. Informace o tomto rozšíření najdete v části "dblink a postgres_fdw". | 1.0 | 1.0 | 1.0 | 1.1 |
| sslinfo | Informace o certifikátech TLS/SSL. | 1.2 | 1.2 | 1.2 | 1.2 |
| TSM _ systémové _ řádky | TABLESAMPLE – metoda, která přijímá počet řádků jako limit. | 1.0 | 1.0 | 1.0 | 1.0 |
| TSM _ systémový _ čas | TABLESAMPLE – metoda, která akceptuje dobu v milisekundách jako limit. | 1.0 | 1.0 | 1.0 | 1.0 |
| xml2 | Dotazování XPath a transformace XSLT. | 1.1 | 1.1 | 1.1 | 1.1 |
Rozšíření PostGIS
| Linka | Popis | PG 11 | PG 12 | PG 13 | PG 14 |
|---|---|---|---|---|---|
| PostGIS, PostGIS, _ topologie PostGIS _ tygr _ , PostGIS _ sfcgal | Prostorové a geografické objekty pro PostgreSQL. | 2.5.5 | 3.0.3 | 3.0.3 | 3.1.4 |
| adresa pro _ standardizaci adresování, adresové _ _ data _ | Slouží k analýze adresy na prvky prvku. Slouží k podpoře kroku pro normalizaci adres geografického kódování. | 2.5.5 | 3.0.3 | 3.0.3 | 3.1.4 |
| PostGIS _ sfcgal | PostGIS funkce SFCGAL. | 2.5.5 | 3.0.3 | 3.0.3 | 3.1.4 |
| PostGIS _ tygr, _ INCODE | PostGIS tygr, INCODE a Reverse INCODE. | 2.5.5 | 3.0.3 | 3.0.3 | 3.1.4 |
| _topologie PostGIS | Prostorové typy a funkce topologie PostGIS. | 2.5.5 | 3.0.3 | 3.0.3 | 3.1.4 |
pg_stat_statements
_ _ rozšíření příkazů pg stat je předem načteno na každý Azure Database for PostgreSQL server, který poskytuje prostředky pro sledování statistik provádění příkazů SQL.
Nastavení pg_stat_statements.track Určuje, které příkazy se započítávají pomocí rozšíření. Výchozí hodnota je top , což znamená, že jsou sledovány všechny příkazy vystavené přímo klienty. Tyto dvě úrovně sledování jsou none a all . Toto nastavení se dá nakonfigurovat jako parametr serveru prostřednictvím Azure Portal nebo rozhraní příkazového řádku Azure CLI.
existují kompromisy mezi informacemi o provádění dotazů, které pg_stat_statements poskytuje, a vlivem na výkon serveru při jejich zaznamenání každého příkazu SQL. Pokud nepoužíváte rozšíření pg_stat_statements, doporučujeme, abyste nastavili pg_stat_statements.track na none . Některé služby monitorování třetích stran se můžou spoléhat na pg_stat_statements pro poskytování přehledů výkonu dotazů, takže ověřte, jestli se jedná o případ nebo ne.
dblink a postgres_fdw
Pomocí dblink a Postgres FDW se můžete _ připojit z jednoho serveru PostgreSQL k druhému nebo do jiné databáze na stejném serveru. Přijímající server musí v bráně firewall umožňovat připojení z odesílajícího serveru. Pokud chcete tato rozšíření použít pro připojení mezi skupinami serverů Azure Database for PostgreSQL nebo Citus (), nastavte možnost dovolit službám a prostředkům Azure přístup k této skupině serverů (nebo serveru) na zapnuto. Toto nastavení musíte zapnout také v případě, že chcete použít rozšíření pro návrat ke stejnému serveru. Nastavení Povolení služeb a prostředků Azure pro přístup k této skupině serverů najdete na stránce Azure Portal pro skupinu serverů Citus () v části síť. V současné době se odchozí připojení z Azure Database for PostgreSQL jednom serveru a Citus () nepodporují, s výjimkou připojení k ostatním serverům Azure Database for PostgreSQL a skupinám serverů Citus ().