Dieser Abschnitt enthält Informationen zum Konfigurieren der Datenbankerweiterungen, die vom Database Service unterstützt werden.
Erweiterung installieren
Erweiterungen können nur auf dem primären DBCluster installiert werden. Nach der Installation wird die Erweiterung auf 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. Daher müssen Nutzer das Datenbank-Flag festlegen, "dbs.enable_<extension-name>": "on" dann eine Verbindung zum Datenbankcluster herstellen und den Befehl CREATE EXTENSION ausführen.
Nur Datenbanknutzer, die Mitglieder der Rolle alloydbsuperuser sind, können den Befehl CREATE EXTENSION ausführen. Standardmäßig umfasst dies den Nutzer dbsadmin.
Erweiterung löschen
Um eine Erweiterung zu löschen, muss der Datenbanknutzer, der dies versucht, der Eigentümer der Erweiterung sein. Das bedeutet, dass nur der Datenbanknutzer, der die Erweiterung ursprünglich erstellt hat, berechtigt ist, sie zu löschen. Kein anderer Datenbanknutzer kann die Erweiterung löschen, wodurch eine kontrollierte Verwaltung von Erweiterungen gewährleistet wird.
Unterstützte Datenbankerweiterungen
In der folgenden Tabelle sind alle unterstützten Erweiterungen aufgeführt.
| Erweiterung | Beschreibung |
|---|---|
| alloydb_ai_nl | Google-Erweiterung für AlloyDB AI und Natural Language |
| 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 | Bietet Funktionen zum automatischen Erhöhen von Feldern |
| bloom | Bietet eine Methode für den Zugriff auf Indexe basierend auf Bloomfiltern. 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 den 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 zur erweiterten 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 Arbeitslasten von HTAP (Hybrid Transactional Analytical Processing) und OLAP (Online Analytical Processing) sehr effizient verarbeitet. |
| google_db_advisor | Bietet den Indexberater von AlloyDB, der Indexe zum Beschleunigen der Abfrageverarbeitung empfiehlt. |
| google_ml_integration | Bietet Funktionen, mit denen Sie auf Vertex AI-Endpunkte zugreifen können, um Vorhersagen in SQL zu erhalten. |
| postgresql-hll | Bietet eine HyperLogLog-Datenstruktur (hll), die die Kardinalität eines Sets schätzt. |
| hstore | Implementiert den Datentyp hstore für das Speichern von Gruppen von Schlüssel/Wert-Paaren innerhalb eines einzelnen PostgreSQL-Werts. |
| hypopg | Bietet 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 zuletzt eine Zeile in einer Datenbanktabelle 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. So können Sie nachverfolgen, wann eine Zeile in einer Datenbanktabelle zuletzt geändert wurde. |
| 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 Audit-Logs zu Sitzungen und Objekten über die Standard-Loggingfunktion von PostgreSQL. |
| pgcrypto | Stellt kryptografische Funktionen für PostgreSQL zur Verfügung. |
| pgfincore | Eine Reihe von Funktionen zum Verwalten von Seiten im Datenträger-Cache des Betriebssystems von PostgreSQL. |
| pglogical | Bietet logische Replikation für PostgreSQL. |
| 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 | Fügt Ihren Datenbanken Unterstützung für globale temporäre Tabellen hinzu. |
| 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. |
| postgres_ann | PostgreSQL ANN-Suche |
| 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. |
| 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 | Bietet eine Triggerfunktion, die Listener über Änderungen am Inhalt von Datenbanktabellen benachrichtigt. |
| temporal_tables | Bietet Unterstützung für temporale Tabellen. In einer temporalen 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. |