Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Funktionen für Aurora PostgreSQL Limitless Database
In der folgenden Tabelle sehen Sie die neuen Funktionen für Aurora PostgreSQL Limitless Database.
Anmerkung
Die in dieser Tabelle aufgeführten Funktionen befinden sich im Schema rds_aurora. Wenn Sie eine Limitless-Database-Funktion verwenden, stellen Sie sicher, dass Sie den vollqualifizierten Objektnamen angeben: rds_aurora..object_name
| Funktion für Aurora PostgreSQL Limitless Database | Entsprechende Funktion für Aurora PostgreSQL |
|---|---|
| limitless_backend_dsid | pg_backend_pid |
| limitless_cancel_session | pg_cancel_backend |
| limitless_stat_clear_snapshot | pg_stat_clear_snapshot |
| limitless_stat_database_size | pg_database_size |
| limitless_stat_get_snapshot_timestamp | pg_stat_get_snapshot_timestamp |
| limitless_stat_prepared_xacts | pg_prepared_xacts |
| limitless_stat_relation_sizes | pg_indexes_size, pg_relation_size, pg_table_size, pg_total_relation_size |
| limitless_stat_reset | pg_stat_reset |
| limitless_stat_statements_reset | pg_stat_statements_reset |
| limitless_stat_system_waits | aurora_stat_system_waits |
| limitless_terminate_session | pg_terminate_backend |
| limitless_wait_report | aurora_wait_report |
Die folgenden Beispiele enthalten Einzelheiten zu den Funktionen für Aurora PostgreSQL Limitless Database. Weitere Informationen zu PostgreSQL-Funktionen finden Sie unter Funktionen und Operatoren
- limitless_backend_dsid
-
Die Funktion
limitless_backend_dsidgibt die ID der verteilten Sitzung zurück. Eine verteilte Sitzung wird auf einem Router in einer DB-Shard-Gruppe ausgeführt und umfasst Backend-Prozesse auf einem oder mehreren Shards in der DB-Shard-Gruppe.Das folgende Beispiel zeigt, wie die Funktion
limitless_backend_dsidverwendet werden kann.SELECT rds_aurora.limitless_backend_dsid(); limitless_backend_dsid ------------------------ 8CACD7B04D0FC2A5 (1 row) - limitless_cancel_session
-
Die Funktion
limitless_cancel_sessionarbeitet ähnlich wiepg_cancel_backend, versucht aber, alle Backend-Prozesse im Zusammenhang mit der angegebenen ID einer verteilten Sitzung abzubrechen, indem sie einSIGINT(Unterbrechungssignal) sendet.Es wird der folgende Eingabeparameter verwendet:
-
distributed_session_id(Text): Die ID der verteilten Sitzung, die abgebrochen werden soll.
Es werden folgende Ausgabeparameter verwendet:
-
subcluster_id(Text): Die ID des Subclusters, zu dem dieser Prozess gehört. -
pid(Text): Die ID des Backend-Prozesses. -
success(Boolean): Ob der Abbruch erfolgreich war.
Das folgende Beispiel zeigt, wie die Funktion
limitless_cancel_sessionverwendet werden kann.SELECT * FROM rds_aurora.limitless_cancel_session('940CD5C81E3C796B'); subcluster_id | pid | success ---------------+-------+--------- 1 | 26920 | t (1 row) -
- limitless_stat_clear_snapshot
-
Die Funktion
limitless_stat_clear_snapshotverwirft den aktuellen Statistik-Snapshot oder die zwischengespeicherten Informationen auf allen Knoten.Das folgende Beispiel zeigt, wie die Funktion
limitless_stat_clear_snapshotverwendet werden kann.SELECT rds_aurora.limitless_stat_clear_snapshot(); - limitless_stat_database_size
-
Die Funktion
limitless_stat_database_sizegibt die Größen einer Datenbank in der DB-Shard-Gruppe zurück.Es wird der folgende Eingabeparameter verwendet:
-
dbname(Name): Die Datenbank, für die die Größen abgerufen werden sollen.
Es werden folgende Ausgabeparameter verwendet:
-
subcluster_id(Text): Die ID des Subclusters, zu dem dieser Prozess gehört. -
subcluster_type(Text): Der Typ des Subclusters, zu dem dieser Prozess gehört:routerodershard. -
db_size: Die Größe der Datenbank in diesem Subcluster in Byte.
Das folgende Beispiel zeigt, wie die Funktion
limitless_stat_database_sizeverwendet werden kann.SELECT * FROM rds_aurora.limitless_stat_database_size('postgres_limitless'); subcluster_id | subcluster_type | db_size ---------------+-----------------+---------- 1 | router | 8895919 2 | router | 8904111 3 | shard | 21929391 4 | shard | 21913007 5 | shard | 21831087 (5 rows) -
- limitless_stat_get_snapshot_timestamp
-
Die Funktion
limitless_stat_get_snapshot_timestampgibt den Zeitstempel des aktuellen Statistik-Snapshots zurück, oderNULL, wenn kein Statistik-Snapshot erstellt wurde. Ein Snapshot wird erstellt, wenn in einer Transaktion zum ersten Mal auf kumulative Statistiken zugegriffen wird, sofernstats_fetch_consistencyaufsnapshotgesetzt ist. Gibt eine konsolidierte Ansicht der Snapshot-Zeitstempel von allen Knoten zurück. Die Spaltensubcluster_idundsubcluster_typezeigen, von welchem Knoten die Daten stammen.Das folgende Beispiel zeigt, wie die Funktion
limitless_stat_get_snapshot_timestampverwendet werden kann.SELECT * FROM rds_aurora.limitless_stat_get_snapshot_timestamp(); subcluster_id | subcluster_type | snapshot_timestamp ---------------+-----------------+-------------------- 1 | router | 2 | router | 3 | shard | 4 | shard | 5 | shard | (5 rows) - limitless_stat_prepared_xacts
-
Die Funktion
limitless_stat_prepared_xactsgibt Informationen über Transaktionen auf allen Knoten zurück, die derzeit für ein zweiphasiges Commit vorbereitet sind. Weitere Informationen finden Sie unter pg_prepared_xactsin der PostgreSQL-Dokumentation. Das folgende Beispiel zeigt, wie die Funktion
limitless_stat_prepared_xactsverwendet werden kann.postgres_limitless=> SELECT * FROM rds_aurora.limitless_stat_prepared_xacts; subcluster_id | subcluster_type | transaction_id | gid | prepared | owner_id | database_id ---------------+-----------------+----------------+------------------------------+-------------------------------+------------+-------------------- 8 | shard | 5815978 | 7_4599899_postgres_limitless | 2024-09-03 15:51:17.659603+00 | auroraperf | postgres_limitless 12 | shard | 4599138 | 7_4599899_postgres_limitless | 2024-09-03 15:51:17.659637+00 | auroraperf | postgres_limitless (2 rows) - limitless_stat_relation_sizes
-
Die Funktion
limitless_stat_relation_sizesgibt die verschiedenen Größen einer Tabelle in der DB-Shard-Gruppe zurück.Es werden folgende Eingabeparameter verwendet:
-
relnspname(Name): Der Name des Schemas, das die Tabelle enthält. -
relname(Name): Der Name der Tabelle.
Es werden folgende Ausgabeparameter verwendet:
-
subcluster_id(Text): Die ID des Subclusters, zu dem dieser Prozess gehört. -
subcluster_type(Text): Der Typ des Subclusters, zu dem dieser Prozess gehört:routerodershard. -
main_size: Die Größe der Haupt-Datenzweige in diesem Knoten in Byte. -
fsm_size: Die Größe der Free-Space-Map für die Tabelle in diesem Knoten in Byte. -
vm_size: Die Größe der Sichtbarkeits-Map für die Tabelle in diesem Knoten in Byte. -
init_size: Die Größe der Initialisierung der Tabelle in diesem Knoten in Byte. -
toast_size: Die Größe der Toast-Tabelle in Byte, die der Tabelle in diesem Zweig zugeordnet ist. -
index_size: Die Größe aller Indizes für die Tabelle in diesem Knoten in Byte. -
total_size: Die Größe aller Tabellensegmente in diesem Knoten in Byte.
Das folgende Beispiel zeigt, wie die Funktion
limitless_stat_relation_sizesverwendet werden kann (einige Spalten wurden weggelassen).SELECT * FROM rds_aurora.limitless_stat_relation_sizes('public','customers'); subcluster_id | subcluster_type | main_size | fsm_size | vm_size | toast_size | table_size | total_size ---------------+-----------------+-----------+----------+---------+------------+------------+------------ 1 | router | 0 | 0 | 0 | 0 | 0 | 0 2 | router | 0 | 0 | 0 | 0 | 0 | 0 3 | shard | 4169728 | 4177920 | 1392640 | 1392640 | 11132928 | 11132928 4 | shard | 4169728 | 4177920 | 1392640 | 1392640 | 11132928 | 11132928 5 | shard | 3981312 | 4227072 | 1409024 | 1409024 | 11026432 | 11026432 (5 rows) -
- limitless_stat_reset
-
Die Funktion
limitless_stat_resetsetzt alle Statistikzähler für die aktuelle Datenbank auf Null (0) zurück. Wenntrack_functionsaktiviert ist, zeigt die Spaltestats_resetinlimitless_stat_databasean, wann die Statistiken für die Datenbank zuletzt zurückgesetzt wurden.limitless_stat_resetkann standardmäßig nur von einem Superuser ausgeführt werden. Anderen Benutzern kann mithilfe des PrivilegsEXECUTEeine entsprechende Berechtigung erteilt werden.Das folgende Beispiel zeigt, wie die Funktion
limitless_stat_resetverwendet werden kann.SELECT tup_inserted, tup_deleted FROM pg_stat_database WHERE datname = 'postgres_limitless'; tup_inserted | tup_deleted --------------+------------- 896 | 0 (1 row) SELECT rds_aurora.limitless_stat_reset(); limitless_stat_reset --------------------- (1 row) SELECT tup_inserted, tup_deleted FROM pg_stat_database WHERE datname = 'postgres_limitless'; tup_inserted | tup_deleted -------------+------------- 0 | 0 (1 row) - limitless_stat_statements_reset
-
Die Funktion
limitless_stat_statements_resetverwirft Statistiken, die inzwischen vonlimitless_stat_statementserfasst wurden, für die festgelegten Parameterusername,dbname,distributed_query_idundqueryid. Wenn einer der Parameter nicht angegeben ist, wird für jeden Parameter der Standardwert""oder0(ungültig) verwendet, und die Statistiken, die mit anderen Parametern übereinstimmen, werden zurückgesetzt. Wenn kein Parameter angegeben ist oder alle angegebenen Parameter""oder0(ungültig) lauten, verwirft die Funktion alle Statistiken. Wenn alle Statistiken in der Ansichtlimitless_stat_statementsverworfen werden, setzt die Funktion auch die Statistiken in der Ansichtlimitless_stat_statements_infozurück.Es werden folgende Eingabeparameter verwendet:
-
username(Name): Der Benutzer, der die Anweisung abgefragt hat. -
dbname(Name): Die Datenbank, in der die Abfrage ausgeführt wurde. -
distributed_query_id(bigint): Die Abfrage-ID der übergeordneten Abfrage vom Koordinatorknoten. Diese Spalte lautetNULL, wenn es sich um die übergeordnete Abfrage handelt. Der Koordinatorknoten gibt die ID der verteilten Abfrage an die teilnehmenden Knoten weiter. Für die Teilnehmerknoten sind die Werte für die ID der verteilten Abfrage und die ID der Abfrage also unterschiedlich. -
queryid(bigint): Die Abfrage-ID der Anweisung.
Das folgende Beispiel zeigt, wie die Funktion
limitless_stat_statements_resetverwendet wird, um alle vonlimitless_stat_statementserfassten Statistiken zurückzusetzen.SELECT rds_aurora.limitless_stat_statements_reset(); -
- limitless_stat_system_waits
-
Die Funktion
limitless_stat_system_waitsgibt eine konsolidierte Ansicht der Warteereignisdaten ausaurora_stat_system_waitsvon allen Knoten zurück, die systemweite Warteaktivitäten in einer Instance meldet. Die Spaltensubcluster_idundsubcluster_typezeigen, von welchem Knoten die Daten stammen.Das folgende Beispiel zeigt, wie die Funktion
limitless_stat_system_waitsverwendet werden kann.postgres_limitless=> SELECT * FROM rds_aurora.limitless_stat_system_waits() lssw, pg_catalog.aurora_stat_wait_event() aswe WHERE lssw.event_id=aswe.event_id and aswe.event_name='LimitlessTaskScheduler'; subcluster_id | subcluster_type | type_id | event_id | waits | wait_time | event_name ---------------+-----------------+---------+-----------+--------+--------------+------------------------ 1 | router | 12 | 201326607 | 677068 | 616942216307 | LimitlessTaskScheduler 2 | router | 12 | 201326607 | 678586 | 616939897111 | LimitlessTaskScheduler 3 | shard | 12 | 201326607 | 756640 | 616965545172 | LimitlessTaskScheduler 4 | shard | 12 | 201326607 | 755184 | 616958057620 | LimitlessTaskScheduler 5 | shard | 12 | 201326607 | 757522 | 616963183539 | LimitlessTaskScheduler (5 rows) - limitless_terminate_session
-
Die Funktion
limitless_terminate_sessionarbeitet ähnlich wiepg_terminate_backend, versucht aber, alle Backend-Prozesse im Zusammenhang mit der angegebenen ID einer verteilten Sitzung zu beenden, indem sie einSIGTERM(Beendigungssignal) sendet.Es wird der folgende Eingabeparameter verwendet:
-
distributed_session_id(Text): Die ID der verteilten Sitzung, die beendet werden soll.
Es werden folgende Ausgabeparameter verwendet:
-
subcluster_id(Text): Die ID des Subclusters, zu dem dieser Prozess gehört. -
pid(Text): Die ID des Backend-Prozesses. -
success(Boolean): Ob der Prozess erfolgreich beendet wurde.
Das folgende Beispiel zeigt, wie die Funktion
limitless_terminate_sessionverwendet werden kann.SELECT * FROM rds_aurora.limitless_terminate_session('940CD5C81E3C796B'); subcluster_id | pid | success ---------------+-------+--------- 1 | 26920 | t (1 row) -
- limitless_wait_report
-
Die Funktion
limitless_wait_reportgibt die Aktivität „Warteereignis“ über einen bestimmten Zeitraum von allen Knoten zurück. Die Spaltensubcluster_idundsubcluster_typezeigen, von welchem Knoten die Daten stammen.Es werden folgende Ausgabeparameter verwendet:
-
subcluster_id(Text): Die ID des Subclusters, zu dem dieser Prozess gehört. -
subcluster_type(Text): Der Typ des Subclusters, zu dem dieser Prozess gehört:routerodershard.
Die restlichen Spalten sind dieselben wie in
aurora_wait_report.Das folgende Beispiel zeigt, wie die Funktion
limitless_wait_reportverwendet werden kann.postgres_limitless=> select * from rds_aurora.limitless_wait_report(); subcluster_id | subcluster_type | type_name | event_name | waits | wait_time | ms_per_wait | waits_per_xact | ms_per_xact ---------------+-----------------+-----------+------------+-------+-----------+-------------+--------------- +------------- 1 | router | Client | ClientRead | 57 | 741550.14 | 13009.652 | 0.19 | 2505.237 5 | shard | Client | ClientRead | 54 | 738897.68 | 13683.290 | 0.18 | 2496.276 4 | shard | Client | ClientRead | 54 | 738859.53 | 13682.584 | 0.18 | 2496.147 2 | router | Client | ClientRead | 53 | 719223.64 | 13570.257 | 0.18 | 2429.810 3 | shard | Client | ClientRead | 54 | 461720.40 | 8550.378 | 0.18 | 1559.86 -