Datenbankerweiterungen konfigurieren

Dieser Abschnitt enthält Informationen zum Konfigurieren der von Database Service unterstützten Datenbankerweiterungen.

Erweiterung installieren

Erweiterungen können nur im primären DB-Cluster installiert werden. Nach der Installation wird die Erweiterung in Standby-Instanzen repliziert.

Die meisten Erweiterungen können direkt installiert werden, indem Sie eine Verbindung zum Datenbankcluster herstellen und den Befehl CREATE EXTENSION ausführen.

Für einige Erweiterungen ist jedoch eine zusätzliche Konfiguration erforderlich. Nutzer müssen daher das Datenbankflag festlegen ("dbs.enable_<extension-name>": "on"), dann eine Verbindung zum Datenbankcluster herstellen und den Befehl CREATE EXTENSION ausführen.

Nur Datenbanknutzer, die Mitglied der Rolle cloudsqlsuperuser oder alloydbsuperuser sind, können den Befehl CREATE EXTENSION ausführen. Standardmäßig ist der Nutzer dbsadmin enthalten.

Erweiterung entfernen

Damit eine Erweiterung gelöscht werden kann, muss der Datenbanknutzer, der dies versucht, der Inhaber der Erweiterung sein. Das bedeutet, dass nur der Datenbanknutzer, der die Erweiterung ursprünglich erstellt hat, sie löschen darf. Kein anderer Datenbanknutzer kann die Erweiterung löschen. So wird eine kontrollierte Verwaltung von Erweiterungen gewährleistet.

Unterstützte Datenbankerweiterungen

In der folgenden Tabelle sind alle unterstützten Erweiterungen aufgeführt.

Erweiterung In PostgreSQL enthalten In AlloyDB Omni enthalten Beschreibung
address_standardizer Wird verwendet, um eine Adresse in ihre Bestandteile zu zerlegen. Wird in der Regel zur Unterstützung des Schritts zur Normalisierung von Geocoding-Adressen verwendet.
address_standardizer_data_us Beispiel für das US-Dataset für die Adressstandardisierung
alloydb_ai_nl Google-Erweiterung für AlloyDB AI und natürliche Sprache
amcheck Bietet Funktionen zum Prüfen der logischen Konsistenz der Beziehungenstruktur, damit die pg_amcheck-Anwendung auf Fehler prüfen kann.
anon Maskiert oder ersetzt personenidentifizierbare Informationen oder vertrauliche Daten aus einer PostgreSQL-Datenbank.
autonic Stellt Funktionen zum automatischen Inkrementieren von Feldern bereit
bloom Bietet eine Methode für den Zugriff auf Indexe basierend auf Bloom-Filtern. Ein Bloomfilter ist eine platzsparende Datenstruktur, mit der Sie prüfen können, ob ein Element zu einem Set gehört.
btree_gin Stellt Beispiele für GIN-Operatorklassen bereit, die ein Verhalten wie mit dem B-Baum implementieren.
btree_gist Stellt GiST-Operatorklassen für den Index bereit, die ein Verhalten wie mit dem B-Baum implementieren.
citext Stellt den Stringtyp citext bereit, bei dem die Groß-/Kleinschreibung nicht berücksichtigt wird.
cube Implementiert einen Datentyp „cube“ zur Darstellung mehrdimensionaler Cubes.
dblink Stellt Funktionen für die Verbindung mit PostgreSQL-Datenbanken innerhalb einer Datenbanksitzung bereit.
dict_int Eine Add-on-Wörterbuchvorlage für die Volltextsuche, die die Indexierung von Ganzzahlen steuert.
dict_xsyn Wörterbuchvorlage für die Textsuche für die erweiterte Synonymverarbeitung
earthdistance Bietet zwei Ansätze zur Berechnung von Großkreisentfernungen auf der Erdoberfläche.
fuzzystrmatch Bietet mehrere Funktionen, um Ähnlichkeiten und Unterschiede zwischen Strings zu bestimmen.
google_columnar_engine Bietet die spaltenbasierte Engine von AlloyDB, die HTAP- (Hybrid Transactional Analytical Processing) und OLAP-Arbeitslasten (Online Analytical Processing) sehr effizient verarbeitet.
google_db_advisor Bietet die Indexberater-Funktion von AlloyDB, die Indexe zum Beschleunigen der Abfrageverarbeitung empfiehlt.
google_ml_integration Bietet Funktionen, mit denen Sie in SQL auf Vertex AI-Endpunkte zugreifen können, um Vorhersagen abzurufen.
postgresql-hll Bietet eine HyperLogLog-Datenstruktur (hll), mit der die Kardinalität einer Menge geschätzt wird.
hstore Implementiert den Datentyp „hstore“ zum Speichern von Gruppen von Schlüssel/Wert-Paaren innerhalb eines einzelnen PostgreSQL-Werts.
hypopg Unterstützung für hypothetische Indexe.
insert_username Bietet Funktionen zum Speichern des Namens des aktuellen Nutzers in einem Textfeld. Mit dieser Funktion können Sie nachverfolgen, welcher Nutzer eine Zeile in einer Datenbanktabelle zuletzt geändert hat.
intagg Bietet eine Zusammenfassung von Ganzzahlen und einen Zähler.
intarray Bietet eine Reihe von Funktionen und Operatoren zum Bearbeiten von Arrays mit ganzen Zahlen ohne Nullen und zum Ausführen indexierter Suchanfragen darin.
ip4r Stellt Datentypen für IPv4/v6-Adressen und Adressbereiche sowie Indexunterstützung bereit.
isn Stellt Datentypen für verschiedene internationale Standards zur Produktnummerierung bereit.
lo Unterstützung für die Verwaltung großer Objekte (auch LOs oder BLOBs genannt).
ltree Implementiert den Datentyp „ltree“ zur Darstellung von Datenlabels, die in einer hierarchischen Baumstruktur gespeichert werden.
moddatetime Bietet Funktionen zum Speichern der aktuellen Zeit in einem timestamp-Feld. Damit lässt sich nachverfolgen, wann eine Zeile in einer Datenbanktabelle zuletzt geändert wurde.
orafce Stellt Funktionen und Operatoren bereit, die einen Teil der Funktionen und Pakete aus einer Oracle-Datenbank emulieren. Mit diesen Funktionen können Sie Oracle-Anwendungen zu PostgreSQL portieren.
pageinspect Prüft den Inhalt von Datenbankseiten auf unterer Ebene.
pg_bigm Aktiviert die Volltextsuche und ermöglicht einen Zwei-Gramm-Index (Bigram) für eine schnellere Volltextsuche.
pg_buffercache Bietet eine Möglichkeit, zu untersuchen, was im gemeinsamen Zwischenspeichercache in Echtzeit geschieht.
pg_cron Bietet einen Cron-basierten Jobplaner. Mit dieser Erweiterung kann die Cron-Syntax verwendet werden, um PostgreSQL-Befehle direkt aus der Datenbank zu planen.
pg_freespacemap Prüft die Free Space Map (FSM).
pg_hint_plan Ermöglicht die Verbesserung von PostgreSQL-Ausführungsplänen mithilfe von Hinweisen. Dies sind Beschreibungen in SQL-Kommentaren.
pg_partman Ermöglicht das Erstellen und Verwalten zeitbasierter und serieller Tabellenpartitionen.
pg_prewarm Bietet eine bequeme Möglichkeit, Beziehungsdaten in den Zwischenspeichercache des Betriebssystems oder von PostgreSQL zu laden.
pg_proctab Ermöglicht Ihnen, pg_top zu verwenden und Berichte aus der Betriebssystemprozesstabelle zu erstellen.
pg_repack Ermöglicht das Entfernen von Bloat aus Tabellen und Indexen. Optional haben Sie die Möglichkeit, ein Online-Clustering auszuführen (Tabellen nach Clusterindex sortieren).
pg_similarity Bietet Unterstützung für Ähnlichkeitsabfragen in PostgreSQL.
pg_squeeze Entfernt ungenutzten Speicherplatz aus einer Tabelle und verwendet optional einen Index, um Datensätze oder Zeilen (Tupel) der Tabelle zu sortieren.
pg_stat_statements Bietet eine Möglichkeit, die Ausführungsstatistiken aller ausgeführten SQL-Anweisungen zu beobachten.
pg_trgm Stellt Funktionen und Operatoren zum Ermitteln der Ähnlichkeit von alphanumerischem Text anhand von Trigramm-Abgleichen sowie Indexoperatorklassen bereit, die eine schnelle Suche nach ähnlichen Strings unterstützen.
pg_visibility Bietet die Möglichkeit, die Sichtbarkeitskarte (Visibility Map, VM) sowie die Sichtbarkeitsinformationen einer Tabelle auf Seitenebene zu prüfen.
pg_wait_sampling Erfasst stichprobenbasierte Statistiken von Warteereignissen und stellt Warteereignisdaten für Prozesse auf Servern bereit.
pgaudit Bietet detaillierte Sitzungs- und Objekt-Audit-Logs über die von PostgreSQL bereitgestellte Standardprotokollierungsfunktion.
pgcrypto Stellt kryptografische Funktionen für PostgreSQL zur Verfügung.
pgfincore Eine Reihe von Funktionen zum Verwalten von Seiten im Laufwerk-Cache des Betriebssystems von PostgreSQL.
pglogical Bietet logische Replikation für PostgreSQL.
pgrouting Erweitert PostGIS und ermöglicht die raumbezogene Verarbeitung durch Netzwerkrouting und -analyse.
pgrowlocks Stellt Zeilensperrinformationen für die angegebene Tabelle bereit.
pgstattuple Bietet verschiedene Funktionen zum Abrufen von Tuple-Statistiken.
pgtap Bietet ein Framework für Einheitentests für PostgreSQL, geschrieben in PL/pgSQL und PL/SQL.
pgtt Unterstützung für globale temporäre Tabellen in Ihren Datenbanken wird hinzugefügt.
plpgsql Eine ladbare prozedurale Sprache zum Erstellen von Funktionen, Prozeduren und Triggern. Sie können diese Sprache auch für die direkte Ausführung von Code in DO-Blöcken verwenden.
plproxy Handler für prozedurale Sprachen, der Remote-Prozeduraufrufe zwischen PostgreSQL-Datenbanken mit optionaler Fragmentierung ermöglicht.
plv8 Stellt eine prozedurale Sprache zum Aktivieren von JavaScript bereit.
postgis PostGIS-Geometrie und geografische räumliche Typen und Funktionen
postgres_ann PostgreSQL ANN Search
postgis_raster PostGIS-Rastertypen und -Funktionen
postgis_sfcgal PostGIS SFCGAL-Funktionen
postgis_tiger_geocoder PostGIS-Tiger-Geocoder und Reverse-Geocoder
postgis_topology PostGIS-Topologie – räumliche Typen und Funktionen
postgres_fdw Ermöglicht das Erstellen von Wrappern für externe Daten innerhalb von Instanzen oder zwischen Instanzen.
prefix Bietet Präfix-Matching sowie Indexunterstützung.
rdkit Bietet Funktionen zum Vergleichen, Bearbeiten und Identifizieren von molekularen Strukturen.
refint Enthält Funktionen zum Prüfen von Fremdschlüsseleinschränkungen, der Referenztabelle und der referenzierten Tabelle.
sslinfo Stellt Informationen über das SSL-Zertifikat bereit, das der aktuelle Client beim Herstellen der Verbindung zur Instanz verwendet hat.
tablefunc Enthält verschiedene Funktionen, die Tabellen (mehrere Zeilen) zurückgeben.
tcn Stellt eine Triggerfunktion bereit, die Listener über Änderungen am Inhalt von Datenbanktabellen benachrichtigt.
temporal_tables Unterstützung für temporale Tabellen In einer temporären Tabelle wird der Zeitraum aufgezeichnet, in dem eine Zeile aus Datenbanksicht gültig ist.
tsm_system_rows Stellt die Stichprobenmethode SYSTEM_ROWS für Tabellen bereit, die in der TABLESAMPLE-Klausel eines SELECT-Befehls verwendet werden kann.
tsm_system_time Stellt die Stichprobenmethode SYSTEM_TIME für Tabellen bereit, die in der TABLESAMPLE-Klausel eines SELECT-Befehls verwendet werden kann.
unaccent Ein Wörterbuch für die Textsuche, das Akzente (diakritische Zeichen) von Lexemen entfernt.
uuid-ossp Bietet Funktionen zum Generieren von UUIDs (Universally Unique Identifiers) mit einem von mehreren Standardalgorithmen.
pgvector Eine Open-Source-Erweiterung zum Speichern und Suchen von Vektoreinbettungen in PostgreSQL-Datenbanken.