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
Datové 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
Lo Ú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.0.0 5.0.0 5.0.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
Bloom 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
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.5 1.5 1.5 1.5 1.5
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.5.1 0.5.1 0.5.1 0.5.1 0.5.1

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.0 3.4.0 3.4.0 3.4.0 3.4.0
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.0 3.4.0 3.4.0 3.4.0 3.4.0
postgis_sfcgal Funkce PostGIS SFCGAL 3.3.4 3.4.0 3.4.0 3.4.0 3.4.0 3.4.0
postgis_topology Prostorové typy a funkce topologie PostGIS. 3.3.4 3.4.0 3.4.0 3.4.0 3.4.0 3.4.0

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.

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