Sdílet prostřednictvím


Rozšíření PostgreSQL ve službě Azure Cosmos DB for PostgreSQL

Důležité

Azure Cosmos DB for PostgreSQL se už pro nové projekty nepodporuje. Tuto službu nepoužívejte pro nové projekty. Místo toho použijte jednu z těchto dvou služeb:

  • Azure Cosmos DB for NoSQL můžete použít pro distribuované databázové řešení navržené pro vysoce škálovatelné scénáře s 99,999% smlouvou o úrovni služeb (SLA), okamžitým automatickým škálováním a automatickým převzetím služeb při selhání napříč několika oblastmi.

  • Použijte funkci Elastic Clusters služby Azure Database for PostgreSQL pro horizontálně dělené PostgreSQL pomocí opensourcového rozšíření Citus.

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 raději použít funkci create_extension(). 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
isn 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 úseček nebo intervalů s plovoucí desetinnou čárkou. 1.3 1.3 1.3 1.4 1.4 1.4
tdigest Datový typ pro online akumulaci statistik založených na pořadí, jako jsou kvantily a oříznuté průměry. 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í funkce

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
vzdálenost na zemi 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 celých čísel 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_chirurgie 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
refint 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ět 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 Načitatelný procedurální jazyk 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 způsob, jak v reálném čase zkoumat, co se děje ve sdílené mezipaměti. 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 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 (VM) 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 n-tic. 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
standardizátor adres Používá se k rozložení adresy na jednotlivé prvky. 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 je předem načtené v každém clusteru Azure Cosmos DB for PostgreSQL, aby vám poskytlo způsob sledování statistik provádění SQL příkazů.

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.

Existuje kompromis mezi informacemi o provádění dotazů, které poskytuje pg_stat_statements, a vlivem na výkon serveru, jelikož loguje každý SQL příkaz. 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.

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 pro návrat 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

Funkce utl_file jsou deaktivovány v rozšíření orafce.

Další kroky