PostgreSQL-extensies in Azure Cosmos DB for PostgreSQL
VAN TOEPASSING OP: Azure Cosmos DB for PostgreSQL (mogelijk gemaakt door de Citus-database-extensie naar PostgreSQL)
PostgreSQL breidt de functionaliteit van uw database uit met behulp van extensies. Met extensies kunt u meerdere gerelateerde SQL-objecten samenvoegen in één pakket dat met één opdracht uit uw database kan worden geladen of verwijderd. Nadat de gegevens in de database zijn geladen, kunnen de extensies functioneren als ingebouwde functies. Zie Pakketgerelateerde objecten in een extensie voor meer informatie over PostgreSQL-extensies.
PostgreSQL-extensies gebruiken
PostgreSQL-extensies moeten worden geïnstalleerd in uw database voordat u ze kunt gebruiken. Als u een bepaalde extensie wilt installeren, voert u de opdracht CREATE EXTENSION uit vanuit het hulpprogramma psql om de verpakte objecten in uw database te laden.
Notitie
Als CREATE EXTENSION
het mislukt met een fout met de machtiging geweigerd, probeert u in plaats daarvan de create_extension()
functie. Bijvoorbeeld:
SELECT create_extension('postgis');
Als u een extensie wilt verwijderen die op deze manier is geïnstalleerd, gebruikt u drop_extension()
.
Azure Cosmos DB for PostgreSQL ondersteunt momenteel een subset van sleutelextensies, zoals hier wordt vermeld. Andere extensies dan de vermelde extensies worden niet ondersteund. U kunt geen eigen extensie maken met Azure Cosmos DB for PostgreSQL.
Extensies die worden ondersteund door Azure Cosmos DB for PostgreSQL
De volgende tabellen bevatten de standaard PostgreSQL-extensies die worden ondersteund in Azure Cosmos DB for PostgreSQL. Deze informatie is ook beschikbaar door uit te voeren SELECT * FROM pg_available_extensions;
.
De versies van elke extensie die in een cluster zijn geïnstalleerd, verschillen soms op basis van de versie van PostgreSQL (11, 12, 13, 14, 15 of 16). De tabellen bevatten extensieversies per databaseversie.
Citus-extensie
Extensie | Beschrijving | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
citus | Citus gedistribueerde database. | 9.5 | 10,2 | 11.3 | 12.1 | 12.1 | 12.1 |
Extensies voor gegevenstypen
Extensie | Beschrijving | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
citext | Biedt een tekenreekstype dat niet hoofdlettergevoelig is. | 1.5 | 1.6 | 1.6 | 1.6 | 1.6 | 1.6 |
kubus | Biedt een gegevenstype voor multidimensionale kubussen. | 1.4 | 1.4 | 1.4 | 1.5 | 1.5 | 1.5 |
hll | Biedt een HyperLogLog-gegevensstructuur. | 2.18 | 2.18 | 2.18 | 2.18 | 2.18 | 2.18 |
hstore | Biedt een gegevenstype voor het opslaan van sets sleutel-waardeparen. | 1.5 | 1.6 | 1,7 | 1.8 | 1.8 | 1.8 |
Isn | Biedt gegevenstypen voor internationale productnummeringsstandaarden. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
Lo | Onderhoud van groot object. | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
ltree | Biedt een gegevenstype voor hiërarchische structuurachtige structuren. | 1.1 | 1.1 | 1.2 | 1.2 | 1.2 | 1.2 |
Seg | Gegevenstype voor het weergeven van lijnsegmenten of intervallen tussen zwevende komma's. | 1.3 | 1.3 | 1.3 | 1.4 | 1.4 | 1.4 |
tdigest | Gegevenstype voor on-line accumulatie van op rang gebaseerde statistieken, zoals kwantielen en ingekorte middelen. | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 |
topn | Type voor JSONB met top-n. | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 |
Extensies voor zoeken in volledige tekst
Extensie | Beschrijving | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
dict_int | Biedt een zoekwoordenlijstsjabloon voor tekst voor gehele getallen. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
dict_xsyn | Tekstzoekwoordenlijstsjabloon voor uitgebreide synoniemenverwerking. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
Unaccent | Een woordenlijst voor tekstzoekopdrachten waarmee accenten (diakritische tekens) uit lexemes worden verwijderd. | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
Functions-extensies
Extensie | Beschrijving | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 15 |
---|---|---|---|---|---|---|---|
auto-inc | Functies voor het automatisch maken van velden. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
earthdistance | Biedt een middel om grote cirkelafstanden op het oppervlak van de aarde te berekenen. | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
fuzzystrmatch | Biedt verschillende functies om overeenkomsten en afstand tussen tekenreeksen te bepalen. | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.2 |
insert_username | Functies voor het bijhouden van wie een tabel heeft gewijzigd. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
intagg | Geheel getalaggregator en enumerator (verouderd). | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
intarray | Biedt functies en operators voor het bewerken van null-vrije matrices van gehele getallen. | 1.2 | 1.2 | 1.3 | 1.5 | 1.5 | 1.5 |
moddatetime | Functies voor het bijhouden van de laatste wijzigingstijd. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
orafce | Functies en operators die een subset van functies en pakketten uit de Oracle RDBMS emuleren. | 4.9 | 4.9 | 4.9 | |||
pg_partman | Beheert gepartitioneerde tabellen op tijd of id. | 4.7.4 | 4.7.4 | 4.7.4 | 5.1.0 | 5.1.0 | 5.1.0 |
pg_surgery | Functies om een operatie uit te voeren op een beschadigde relatie. | 1.0 | 1.0 | 1.0 | |||
pg_trgm | Biedt functies en operatoren voor het bepalen van de gelijkenis van alfanumerieke tekst op basis van trigramvergelijking. | 1.4 | 1.4 | 1.5 | 1.6 | 1.6 | 1.6 |
pgcrypto | Biedt cryptografische functies. | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 |
verfijning | Functies voor het implementeren van referentiële integriteit (verouderd). | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
tablefunc | Biedt functies waarmee hele tabellen worden bewerkt, inclusief kruistabel. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
tcn | Geactiveerde wijzigingsmeldingen. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
timetravel | Functies voor het implementeren van tijdreizen. | 1.0 | |||||
uuid-ossp | Genereert universeel unieke id's (UUID's). | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
Extensies voor indextypen
Extensie | Beschrijving | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
bloeien | Bloom-toegangsmethode - index op basis van handtekeningenbestand. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
btree_gin | Biedt voorbeeld-GIN-operatorklassen die B-tree-achtig gedrag implementeren voor bepaalde gegevenstypen. | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 |
btree_gist | Biedt giST-indexoperatorklassen die B-tree implementeren. | 1.5 | 1.5 | 1.5 | 1.6 | 1,7 | 1,7 |
Taalextensies
Extensie | Beschrijving | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
plpgsql | PL/pgSQL laadbare proceduretaal. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
Diverse extensies
Extensie | Beschrijving | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
amcheck | Functies voor het verifiëren van relationele integriteit. | 1.1 | 1.2 | 1.2 | 1.3 | 1.3 | 1.3 |
dblink | Een module die verbindingen met andere PostgreSQL-databases vanuit een databasesessie ondersteunt. Zie de sectie dblink en postgres_fdw voor informatie over deze extensie. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
old_snapshot | Hiermee staat u inspectie toe van de serverstatus die wordt gebruikt voor het implementeren van old_snapshot_threshold. | 1.0 | 1.0 | 1.0 | |||
pageinspect | Inspecteer de inhoud van databasepagina's op een laag niveau. | 1,7 | 1,7 | 1.8 | 1,9 | 1.11 | 1.12 |
pg_azure_storage | Azure-integratie voor PostgreSQL. | 1.3 | 1.3 | 1.3 | 1.3 | ||
pg_buffercache | Biedt een middel om in realtime te onderzoeken wat er gebeurt in de gedeelde buffercache. | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.4 |
pg_cron | Job scheduler voor PostgreSQL. | 1.5 | 1.6 | 1.6 | 1.6 | 1.6 | 1.6 |
pg_freespacemap | Bekijk de vrije ruimtekaart (FSM). | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pg_prewarm | Biedt een manier om relationele gegevens in de buffercache te laden. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pg_stat_statements | Biedt een methode voor het bijhouden van uitvoeringsstatistieken van alle SQL-instructies die door een server worden uitgevoerd. Zie de sectie 'pg_stat_statements' voor informatie over deze extensie. | 1.6 | 1,7 | 1.8 | 1,9 | 1,10 | 1,10 |
pg_visibility | Bekijk de zichtbaarheidskaart (VM) en zichtbaarheidsgegevens op paginaniveau. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pgrowlocks | Biedt een middel voor het weergeven van informatie over het vergrendelen op rijniveau. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pgungsuple | Biedt een middel voor het weergeven van statistieken op tuple-niveau. | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 |
postgres_fdw | Wrapper voor refererende gegevens die worden gebruikt voor toegang tot gegevens die zijn opgeslagen op externe PostgreSQL-servers. Zie de sectie dblink en postgres_fdw voor informatie over deze extensie. | 1.0 | 1.0 | 1.0 | 1.1 | 1.1 | 1.1 |
sslinfo | Informatie over TLS/SSL-certificaten. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
tsm_system_rows | De methode TABLESAMPLE, die het aantal rijen als limiet accepteert. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
tsm_system_time | De methode TABLESAMPLE, die tijd in milliseconden accepteert als een limiet. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
xml2 | XPath-query's en XSLT. | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
Pgvector-extensie
Extensie | Beschrijving | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
pgvector | Opensource vector overeenkomsten zoeken naar Postgres | 0.5.1 | 0.7.0 | 0.7.0 | 0.7.0 | 0.7.0 | 0.7.0 |
PostGIS-extensies
Extensie | Beschrijving | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
PostGIS | Ruimtelijke en geografische objecten voor PostgreSQL. | 3.3.4 | 3.4.1 | 3.4.1 | 3.4.1 | 3.4.1 | 3.4.1 |
address_standardizer | Wordt gebruikt om een adres te parseren in samenstellende elementen. Wordt gebruikt ter ondersteuning van de geocoderingsstap voor normalisatie van adressen. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
postgis_sfcgal | PostGIS SFCGAL-functies. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
postgis_topology | Ruimtelijke postGIS-topologietypen en -functies. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
pg_stat_statements
De pg_stat_statements-extensie wordt vooraf geladen op elk Azure Cosmos DB for PostgreSQL-cluster om u een middel te bieden voor het bijhouden van uitvoeringsstatistieken van SQL-instructies.
De instelling pg_stat_statements.track
bepaalt welke instructies worden geteld door de extensie. Het is standaard ingesteld top
op , wat betekent dat alle instructies die rechtstreeks door clients worden uitgegeven, worden bijgehouden. De twee andere traceringsniveaus zijn none
en all
.
Er is een afweging tussen de queryuitvoeringsgegevens die pg_stat_statements biedt en het effect op serverprestaties tijdens het registreren van elke SQL-instructie. Als u de pg_stat_statements-extensie niet actief gebruikt, raden we u aan deze optie in te none
stellenpg_stat_statements.track
. Sommige bewakingsservices van derden kunnen afhankelijk zijn van pg_stat_statements om inzicht in queryprestaties te bieden. Controleer daarom of dit het geval is voor u.
dblink en postgres_fdw
U kunt dblink en postgres_fdw gebruiken om verbinding te maken tussen de ene PostgreSQL-server en een andere database op dezelfde server. De ontvangende server moet verbindingen van de verzendende server via de firewall toestaan. Als u deze extensies wilt gebruiken om verbinding te maken tussen Azure Cosmos DB for PostgreSQL-clusters met openbare toegang, stelt u Azure-services en -resources toegang tot dit cluster (of de server) in op AAN. U moet deze instelling ook inschakelen als u de extensies wilt gebruiken om terug te keren naar dezelfde server. De azure-services en -resources toegang geven tot deze clusterinstelling vindt u op de azure-portalpagina voor het cluster onder Netwerken. Op dit moment worden uitgaande verbindingen van Azure Cosmos DB for PostgreSQL niet ondersteund.
orafce-extensie
utl_file functies zijn uitgeschakeld in orafce-extensie.
Volgende stappen
- Meer informatie over ondersteunde PostgreSQL-versies.