Rozšíření PostgreSQL ve službě Azure Cosmos DB for PostgreSQL
PLATÍ PRO: Azure Cosmos DB for PostgreSQL (využívající rozšíření databáze Citus do PostgreSQL)
PostgreSQL rozšiřuje funkce vaší databáze pomocí rozšíření. Rozšíření umožňují seskupit několik souvisejících objektů SQL do jednoho balíčku, který lze 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 naleznete v tématu Package related objects into an extension.
Použití rozšíření PostgreSQL
Než je budete moct používat, musíte do databáze nainstalovat rozšíření PostgreSQL. Pokud chcete nainstalovat konkrétní rozšíření, spusťte příkaz CREATE EXTENSION z nástroje psql, který načte zabalené objekty do databáze.
Poznámka:
Pokud CREATE EXTENSION
selže s chybou odepření oprávnění, zkuste místo create_extension()
toho funkci. Například:
SELECT create_extension('postgis');
Chcete-li tímto způsobem odebrat nainstalované rozšíření, použijte drop_extension()
.
Azure Cosmos DB for PostgreSQL aktuálně podporuje podmnožinu klíčových rozšíření, jak je uvedeno tady. Jiná rozšíření než uvedená rozšíření nejsou podporovaná. Ve službě Azure Cosmos DB for PostgreSQL nemůžete vytvořit vlastní rozšíření.
Rozšíření podporovaná službou Azure Cosmos DB for PostgreSQL
Následující tabulky uvádějí standardní rozšíření PostgreSQL podporovaná ve službě Azure Cosmos DB for PostgreSQL. Tyto informace jsou k dispozici také spuštěním SELECT * FROM pg_available_extensions;
příkazu .
Verze jednotlivých rozšíření nainstalovaných v clusteru se někdy liší podle verze PostgreSQL (11, 12, 13, 14, 15 nebo 16). Tabulky uvádějí verze rozšíření pro každou verzi databáze.
Rozšíření Citus
Rozšíření | Popis | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
citus | Distribuovaná databáze Citus | 9.5 | 10,2 | 11.3 | 12.1 | 12.1 | 12.1 |
Rozšíření datových typů
Rozšíření | Popis | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
citext | Poskytuje typ řetězce znaků nerozlišující velká a malá písmena. | 1.5 | 1.6 | 1.6 | 1.6 | 1.6 | 1.6 |
krychle | Poskytuje datový typ pro multidimenzionální datové krychle. | 1.4 | 1.4 | 1.4 | 1.5 | 1.5 | 1.5 |
hll | Poskytuje datovou strukturu HyperLogLogu. | 2.18 | 2.18 | 2.18 | 2.18 | 2.18 | 2.18 |
hstore | Poskytuje datový typ pro ukládání sad párů klíč-hodnota. | 1.5 | 1.6 | 1,7 | 1.8 | 1.8 | 1.8 |
Poskytuje datové typy pro mezinárodní standardy číslování výrobků. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | |
hle | Údržba velkých objektů | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
Ltree | Poskytuje datový typ pro hierarchické stromové struktury. | 1,1 | 1,1 | 1.2 | 1.2 | 1.2 | 1.2 |
Seg | Datový typ pro reprezentaci segmentů čar nebo intervalů s plovoucí desetinou čárkou | 1.3 | 1.3 | 1.3 | 1.4 | 1.4 | 1.4 |
tdigest | Datový typ pro online akumulace statistik založených na pořadí, jako jsou quantily a oříznuté prostředky. | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 |
topn | Typ pro JSONB typu top-n. | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 |
Rozšíření fulltextového vyhledávání
Rozšíření | Popis | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
dict_int | Poskytuje šablonu slovníku pro vyhledávání textu pro celá čísla. | 1.0 | 1.0 | 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 | 1.0 | 1.0 |
unaccent | Slovník pro vyhledávání textu, který odebere z lexemů zvýraznění (diakritické znaky). | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
Rozšíření functions
Rozšíření | Popis | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 15 |
---|---|---|---|---|---|---|---|
autoinc | Funkce pro pole s automatickým přírůstkem | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
zemitost | Poskytuje prostředky pro výpočet vzdáleností velkého kruhu na povrchu Země. | 1,1 | 1,1 | 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 | 1,1 | 1.2 |
insert_username | Funkce pro sledování, kdo změnil tabulku | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
Intagg | Agregátor integer a enumerátor (zastaralé). | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
intarray | Poskytuje funkce a operátory pro manipulaci s poli bez hodnoty null celých čísel. | 1.2 | 1.2 | 1.3 | 1.5 | 1.5 | 1.5 |
moddatetime | Funkce pro sledování času poslední úpravy | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
orafce | Funkce a operátory, které emulují podmnožinu funkcí a balíčků z Oracle RDBMS. | 4,9 | 4,9 | 4,9 | |||
pg_partman | Spravuje dělené tabulky podle času nebo ID. | 4.7.4 | 4.7.4 | 4.7.4 | 5.1.0 | 5.1.0 | 5.1.0 |
pg_surgery | Funkce k provedení operace na poškozeném vztahu. | 1.0 | 1.0 | 1.0 | |||
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 | 1.6 | 1.6 |
pgcrypto | Poskytuje kryptografické funkce. | 1.3 | 1.3 | 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 | 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 | 1.0 | 1.0 |
tcn | Aktivovala se oznámení o změnách. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
časový limit | Funkce pro implementaci časového cestování | 1.0 | |||||
uuid-ossp | Generuje univerzální jedinečné identifikátory (UUID). | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
Rozšíření typů indexů
Rozšíření | Popis | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
kvést | Přístupová metoda Bloomu – index založený na souboru podpisu | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
btree_gin | Poskytuje ukázkové třídy operátoru GIN, které implementují chování podobné stromu B pro určité datové typy. | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 |
btree_gist | Poskytuje třídy operátoru indexu GiST, které implementují B-tree. | 1.5 | 1.5 | 1.5 | 1.6 | 1,7 | 1,7 |
Jazyková rozšíření
Rozšíření | Popis | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
plpgsql | Procedurální jazyk, který lze načíst pomocí PL/pgSQL. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
Různá rozšíření
Rozšíření | Popis | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
amcheck | Funkce pro ověření integrity relací | 1,1 | 1.2 | 1.2 | 1.3 | 1.3 | 1.3 |
dblink | Modul, který podporuje připojení k jiným databázím PostgreSQL v rámci relace databáze. Informace o tomto rozšíření najdete v části Dblink a postgres_fdw. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
old_snapshot | Umožňuje kontrolu stavu serveru, který se používá k implementaci old_snapshot_threshold. | 1.0 | 1.0 | 1.0 | |||
pageinspect | Zkontrolujte obsah databázových stránek na nízké úrovni. | 1,7 | 1,7 | 1.8 | 1,9 | 1.11 | 1.12 |
pg_azure_storage | Integrace Azure pro PostgreSQL | 1.3 | 1.3 | 1.3 | 1.3 | ||
pg_buffercache | Poskytuje prostředky pro zkoumání toho, co se děje v mezipaměti sdílené vyrovnávací paměti v reálném čase. | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.4 |
pg_cron | Plánovač úloh pro PostgreSQL | 1.5 | 1.6 | 1.6 | 1.6 | 1.6 | 1.6 |
pg_freespacemap | Prozkoumejte mapu volného místa (FSM). | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pg_prewarm | Poskytuje způsob, jak načíst relační data do mezipaměti vyrovnávací paměti. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pg_stat_statements | Poskytuje prostředky pro sledování statistik provádění všech příkazů SQL spuštěných serverem. Informace o tomto rozšíření najdete v části "pg_stat_statements". | 1.6 | 1,7 | 1.8 | 1,9 | 1,10 | 1,10 |
pg_visibility | Prozkoumejte mapu viditelnosti (virtuální počítač) a informace o viditelnosti na úrovni stránky. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pgrowlocks | Poskytuje způsob zobrazení informací o uzamčení na úrovni řádků. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pgstattuple | Poskytuje způsob zobrazení statistiky na úrovni řazené kolekce členů. | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 |
postgres_fdw | Obálka cizích dat použitá pro přístup k datům uloženým na externích serverech PostgreSQL. Informace o tomto rozšíření najdete v části Dblink a postgres_fdw. | 1.0 | 1.0 | 1.0 | 1,1 | 1,1 | 1,1 |
sslinfo | Informace o certifikátech TLS/SSL | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
tsm_system_rows | METODA TABLESAMPLE, která přijímá počet řádků jako limit. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
tsm_system_time | METODA TABLESAMPLE, která přijímá čas v milisekundách jako limit. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
xml2 | Dotazování XPath a XSLT | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
Rozšíření Pgvector
Rozšíření | Popis | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
pgvector | Hledání podobnosti vektorů open source pro Postgres | 0.5.1 | 0.7.0 | 0.7.0 | 0.7.0 | 0.7.0 | 0.7.0 |
Rozšíření PostGIS
Rozšíření | Popis | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
PostGIS | Prostorové a geografické objekty pro PostgreSQL. | 3.3.4 | 3.4.1 | 3.4.1 | 3.4.1 | 3.4.1 | 3.4.1 |
address_standardizer | Používá se k analýze adresy do základních prvků. Používá se k podpoře kroku normalizace geokódování adres. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
postgis_sfcgal | Funkce PostGIS SFCGAL | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
postgis_topology | Prostorové typy a funkce topologie PostGIS. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
pg_stat_statements
Rozšíření pg_stat_statements se předem načte v každém clusteru Azure Cosmos DB for PostgreSQL, aby vám poskytlo způsob sledování statistik provádění příkazů SQL.
pg_stat_statements.track
Nastavení určuje, jaké příkazy jsou počítány rozšířením. Výchozí hodnota je top
, což znamená, že všechny příkazy vydané přímo klienty jsou sledovány. Dvě další úrovně sledování jsou none
a all
.
Mezi informacemi o spuštění dotazu pg_stat_statements existuje kompromis a vliv na výkon serveru, protože protokoluje každý příkaz SQL. Pokud rozšíření pg_stat_statements aktivně nepoužíváte, doporučujeme nastavit pg_stat_statements.track
hodnotu none
. Některé monitorovací služby třetích stran se můžou při poskytování přehledů výkonu dotazů spoléhat na pg_stat_statements, takže ověřte, jestli se jedná o případ za vás nebo ne.
dblink a postgres_fdw
Pomocí dblinku a postgres_fdw se můžete připojit z jednoho serveru PostgreSQL k jinému nebo k jiné databázi na stejném serveru. Přijímající server musí povolit připojení z odesílajícího serveru přes bránu firewall. Pokud chcete tato rozšíření použít pro připojení mezi clustery Azure Cosmos DB for PostgreSQL s veřejným přístupem, nastavte možnost Povolit službám a prostředkům Azure přístup k tomuto clusteru (nebo serveru) na ZAPNUTO. Toto nastavení je také potřeba zapnout, pokud chcete rozšíření použít ke smyčce zpět na stejný server. Možnosti Povolit službám a prostředkům Azure přístup k tomuto nastavení clusteru najdete na stránce webu Azure Portal pro cluster v části Sítě. V současné době se odchozí připojení ze služby Azure Cosmos DB for PostgreSQL nepodporují.
rozšíření orafce
utl_file funkce jsou zakázány v rozšíření orafce.
Další kroky
- Přečtěte si o podporovaných verzích PostgreSQL.