Esquemas:

ACCOUNT_USAGE

Exibição TABLE_DML_HISTORY

Esta exibição Account Usage pode ser usada para determinar a magnitude e os efeitos das operações de DML executadas em uma tabela. Observe que essas operações de DML incluem aquelas iniciadas pelo Snowpipe, mas excluem operações iniciadas por serviços de manutenção em segundo plano (por exemplo, Clustering automático, manutenção para exibições materializadas e otimização de pesquisa).

É possível consultar essa exibição com Exibição QUERY_HISTORY e Exibição LOAD_HISTORY para identificar as operações de DML que têm um impacto significativo. Isso pode ajudar você a identificar oportunidades de otimização.

Além disso, é possível consultar essa exibição com Exibição AUTOMATIC_CLUSTERING_HISTORY e Exibição SEARCH_OPTIMIZATION_HISTORY para visualizar a relação entre essas operações de DML e os créditos cobrados pelo Clustering automático e pelo serviço de otimização de pesquisa. (Esses serviços podem ser acionados por operações de DML.)

Colunas

Nome da coluna

Tipo de dados

Descrição

START_TIME

TIMESTAMP_LTZ

Início do intervalo de tempo (na marca de hora) durante o qual as operações de DML foram realizadas.

END_TIME

TIMESTAMP_LTZ

Fim do intervalo de tempo (na marca de uma hora) durante o qual as operações de DML foram realizadas.

TABLE_ID

NUMBER

Identificador interno/gerado pelo sistema para a tabela modificada pelas operações de DML.

TABLE_NAME

TEXT

Nome da tabela modificada pelas operações de DML.

SCHEMA_ID

NUMBER

Identificador interno/gerado pelo sistema para o esquema que contém a tabela modificada pelas operações de DML.

SCHEMA_NAME

TEXT

Nome do esquema com a tabela modificada pelas operações de DML.

DATABASE_ID

NUMBER

Identificador interno/gerado pelo sistema para o banco de dados com a tabela modificada pelas operações de DML.

DATABASE_NAME

TEXT

Nome do banco de dados com a tabela modificada pelas operações de DML.

ROWS_ADDED

NUMBER

Número de linhas adicionadas por operações de DML executadas pelos usuários na tabela durante a janela de START_TIME e END_TIME.

ROWS_REMOVED

NUMBER

Número de linhas removidas por operações de DML executadas pelos usuários na tabela durante a janela de START_TIME e END_TIME.

ROWS_UPDATED

NUMBER

Número de linhas atualizadas por operações de DML executadas pelos usuários na tabela durante a janela de START_TIME e END_TIME.

Notas de uso

  • A latência da visualização pode ser de até 6 horas.

  • Esta exibição não inclui operações de DML em tabelas híbridas.

Exemplos

O exemplo a seguir retorna as cinco principais tabelas que tiveram mais linhas adicionadas, removidas e atualizadas por operações de DML nos últimos sete dias.

SELECT
    table_id,
    ANY_VALUE(table_name) AS table_name,
    SUM(rows_added) AS total_rows_added,
    SUM(rows_removed) AS total_rows_removed,
    SUM(rows_updated) AS total_rows_updated
  FROM SNOWFLAKE.ACCOUNT_USAGE.TABLE_DML_HISTORY
  WHERE start_time >= DATEADD(day, -7, CURRENT_TIMESTAMP())
  GROUP BY table_id
  ORDER BY total_rows_added + total_rows_removed + total_rows_updated DESC
  LIMIT 5;
Copy
+----------+----------------------+------------------+--------------------+--------------------+
| TABLE_ID | TABLE_NAME           | TOTAL_ROWS_ADDED | TOTAL_ROWS_REMOVED | TOTAL_ROWS_UPDATED |
|----------+----------------------+------------------+--------------------+--------------------|
|   338948 | SENSOR_DATA_TS       |          5356800 |             259200 |                  0 |
|   338950 | SENSOR_DATA_DEVICE2  |          2678400 |                  0 |                  0 |
|   341006 | SENSOR_DATA_30_ROWS  |               30 |                  0 |                  0 |
|   341004 | SENSOR_DATA_12_HOURS |               12 |                  0 |                  0 |
|   340005 | SENSOR_DATA_12_HOURS |               12 |                  0 |                  0 |
+----------+----------------------+------------------+--------------------+--------------------+