

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# aurora\_stat\_dml\_activity
<a name="aurora_stat_dml_activity"></a>

Melaporkan aktivitas kumulatif untuk setiap jenis operasi bahasa manipulasi data (DML) pada basis data dalam klaster Aurora PostgreSQL.

## Sintaksis
<a name="aurora_stat_dml_activity-syntax"></a>

 

```
aurora_stat_dml_activity(database_oid)
```

## Argumen
<a name="aurora_stat_dml_activity-arguments"></a>

 *database\_oid*   
ID Objek (OID) dari basis data di klaster Aurora PostgreSQL.

## Jenis pengembalian
<a name="aurora_stat_dml_activity-return-type"></a>

Catatan SETOF

## Catatan penggunaan
<a name="aurora_stat_dml_activity-usage-notes"></a>

Fungsi `aurora_stat_dml_activity` hanya tersedia dengan Aurora PostgreSQL rilis 3.1 yang kompatibel dengan mesin PostgreSQL 11.6 dan yang lebih baru.

Gunakan fungsi ini pada klaster Aurora PostgreSQL dengan sejumlah besar basis data untuk mengidentifikasi basis data mana yang memiliki aktivitas DML lebih banyak atau lebih lambat, atau keduanya.

Fungsi `aurora_stat_dml_activity` mengembalikan berapa kali operasi dijalankan dan latensi kumulatif dalam mikrodetik untuk operasi SELECT, INSERT, UPDATE, dan DELETE. Laporan ini hanya mencakup operasi DML yang berhasil.

Anda dapat mengatur ulang statistik ini dengan menggunakan fungsi akses statistik PostgreSQL `pg_stat_reset`. Anda dapat memeriksa kapan terakhir kali statistik ini diatur ulang dengan menggunakan fungsi `pg_stat_get_db_stat_reset_time`. Untuk informasi selengkapnya tentang fungsi akses statistik PostgreSQL, lihat [The Statistics Collector](https://www.postgresql.org/docs/9.1/monitoring-stats.html) dalam dokumentasi PostgreSQL.

## Contoh
<a name="aurora_stat_dml_activity-examples"></a>

Contoh berikut menunjukkan cara melaporkan statistik aktivitas DML untuk basis data yang terhubung.

```
––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
```

Contoh berikut menunjukkan statistik aktivitas DML untuk semua basis data di klaster Aurora PostgreSQL. Klaster ini memiliki dua basis data, `postgres` dan `mydb`. Daftar yang dipisahkan koma sesuai dengan bidang `select_count`, `select_latency_microsecs`, `insert_count`, `insert_latency_microsecs`, `update_count`, `update_latency_microsecs`, `delete_count`, dan `delete_latency_microsecs`.

Aurora PostgreSQL membuat dan menggunakan basis data sistem bernama `rdsadmin` untuk mendukung operasi administratif seperti pencadangan, pemulihan, pemeriksaan kondisi, replikasi, dan sebagainya. Operasi DML ini tidak berdampak pada klaster Aurora PostgreSQL Anda.

```
=> 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)
```

Contoh berikut menunjukkan statistik aktivitas DML untuk semua basis data, diatur dalam kolom untuk keterbacaan yang lebih baik.

```
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
```

Contoh berikut menunjukkan latensi kumulatif rata-rata (latensi kumulatif dibagi dengan hitungan) untuk setiap operasi DML untuk basis data dengan 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
```