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.
aurora_stat_dml_activity
Meldet kumulative Aktivitäten für jeden Data-Manipulation-Language-Vorgangstyp (DML) in einer Datenbank in einem Aurora-PostgreSQL-Cluster.
Syntax
aurora_stat_dml_activity(database_oid)
Argumente
- database_oid
-
Die Objekt-ID (OID) der Datenbank im Aurora-PostgreSQL-Cluster.
Rückgabetyp
SETOF-Datensatz
Nutzungshinweise
Die Funktion aurora_stat_dml_activity
ist nur mit Version 3.1 von Aurora PostgreSQL verfügbar, die mit der PostgreSQL-Engine 11.6 und höher kompatibel ist.
Verwenden Sie diese Funktion in Aurora-PostgreSQL-Clustern mit einer großen Anzahl von Datenbanken, um zu ermitteln, welche Datenbanken mehr oder langsamere DML-Aktivitäten oder beides haben.
Die Funktion aurora_stat_dml_activity
gibt die Anzahl der Ausführungen und die kumulative Latenz in Mikrosekunden für SELECT-, INSERT-, UPDATE- und DELETE-Operationen zurück. Der Bericht enthält nur erfolgreiche DML-Operationen.
Mit der PostgreSQL-Statistikzugriffsfunktion pg_stat_reset
können Sie diese Statistik zurücksetzen. Mit der Funktion pg_stat_get_db_stat_reset_time
können Sie überprüfen, wann diese Statistik zuletzt zurückgesetzt wurde. Weitere Informationen zu PostgreSQL-Statistikzugriffsfunktionen finden Sie unter Die Statistikerfassung
Beispiele
Im folgenden Beispiel wird gezeigt, wie Sie DML-Aktivitätsstatistiken für die verbundene Datenbank melden.
––Define the oid variable from connected database by using \gset
=>
SELECT oid, datname FROM pg_database WHERE datname=(select current_database()) \gset
=>
SELECT * FROM aurora_stat_dml_activity(:oid);
select_count | select_latency_microsecs | insert_count | insert_latency_microsecs | update_count | update_latency_microsecs | delete_count | delete_latency_microsecs --------------+--------------------------+--------------+--------------------------+--------------+--------------------------+--------------+-------------------------- 178957 | 66684115 | 171065 | 28876649 | 519538 | 1454579206167 | 1 | 53027
–– Showing the same results with expanded display on=>
SELECT * FROM aurora_stat_dml_activity(:oid);
-[ RECORD 1 ]------------+-------------- select_count | 178957 select_latency_microsecs | 66684115 insert_count | 171065 insert_latency_microsecs | 28876649 update_count | 519538 update_latency_microsecs | 1454579206167 delete_count | 1 delete_latency_microsecs | 53027
Im folgenden Beispiel sehen Sie DML-Aktivitätsstatistiken für alle Datenbanken im Aurora-PostgreSQL-Cluster. Dieser Cluster hat zwei Datenbanken, postgres
und mydb
. Die durch Komma getrennte Liste entspricht den Feldern select_count
, select_latency_microsecs
, insert_count
, insert_latency_microsecs
, update_count
, update_latency_microsecs
, delete_count
und delete_latency_microsecs
.
Aurora PostgreSQL erstellt und verwendet eine Systemdatenbank namens rdsadmin
, um administrative Vorgänge wie Backups, Wiederherstellungen, Zustandsprüfungen, Replikationen usw. zu unterstützen. Diese DML-Operationen haben keine Auswirkungen auf Ihren Aurora-PostgreSQL-Cluster.
=>
SELECT oid, datname, aurora_stat_dml_activity(oid) FROM pg_database;
oid | datname | aurora_stat_dml_activity -------+----------------+----------------------------------------------------------------- 14006 | template0 | (,,,,,,,) 16384 | rdsadmin | (2346623,1211703821,4297518,817184554,0,0,0,0) 1 | template1 | (,,,,,,,) 14007 | postgres | (178961,66716329,171065,28876649,519538,1454579206167,1,53027) 16401 | mydb | (200246,64302436,200036,107101855,600000,83659417514,0,0)
Das folgende Beispiel zeigt DML-Aktivitätsstatistiken für alle Datenbanken, die aus Gründen der Lesbarkeit in Spalten angeordnet sind.
SELECT db.datname, BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 1), '()') AS select_count, BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 2), '()') AS select_latency_microsecs, BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 3), '()') AS insert_count, BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 4), '()') AS insert_latency_microsecs, BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 5), '()') AS update_count, BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 6), '()') AS update_latency_microsecs, BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 7), '()') AS delete_count, BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 8), '()') AS delete_latency_microsecs FROM (SELECT datname, aurora_stat_dml_activity(oid) AS asdmla FROM pg_database ) AS db;
datname | select_count | select_latency_microsecs | insert_count | insert_latency_microsecs | update_count | update_latency_microsecs | delete_count | delete_latency_microsecs ----------------+--------------+--------------------------+--------------+--------------------------+--------------+--------------------------+--------------+-------------------------- template0 | | | | | | | | rdsadmin | 4206523 | 2478812333 | 7009414 | 1338482258 | 0 | 0 | 0 | 0 template1 | | | | | | | | fault_test | 66 | 452099 | 0 | 0 | 0 | 0 | 0 | 0 db_access_test | 1 | 5982 | 0 | 0 | 0 | 0 | 0 | 0 postgres | 42035 | 95179203 | 5752 | 2678832898 | 21157 | 441883182488 | 2 | 1520 mydb | 71 | 453514 | 0 | 0 | 1 | 190 | 1 | 152
Das folgende Beispiel zeigt die durchschnittliche kumulative Latenz (kumulative Latenz geteilt durch die Anzahl) jeder DML-Operation für die Datenbank mit der OID 16401
.
=>
SELECT select_count, select_latency_microsecs, select_latency_microsecs/NULLIF(select_count,0) select_latency_per_exec, insert_count, insert_latency_microsecs, insert_latency_microsecs/NULLIF(insert_count,0) insert_latency_per_exec, update_count, update_latency_microsecs, update_latency_microsecs/NULLIF(update_count,0) update_latency_per_exec, delete_count, delete_latency_microsecs, delete_latency_microsecs/NULLIF(delete_count,0) delete_latency_per_exec FROM aurora_stat_dml_activity(16401);
-[ RECORD 1 ]------------+------------- select_count | 451312 select_latency_microsecs | 80205857 select_latency_per_exec | 177 insert_count | 451001 insert_latency_microsecs | 123667646 insert_latency_per_exec | 274 update_count | 1353067 update_latency_microsecs | 200900695615 update_latency_per_exec | 148478 delete_count | 12 delete_latency_microsecs | 448 delete_latency_per_exec | 37