---
sourceDocument: Interface do usuário da Now Platform Yokohama
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/yokohama/platform-user-interface

 Release :

    - yokohama

ft:locale :

    - pt-BR

ft:publication_title :

    - Interface do usuário da Now Platform Yokohama

ft:clusterId :

    - platux

bundleId :

    - platux

workflow :

    - Platform


---

# Limitar o crescimento de dados de conversa

# Limitar o crescimento de dados de conversa {#ariaid-title1}

* Versão de lançamento: Yokohama
* 
* Atualizado 30 de jan. de 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 7 min. de leitura

À medida que as operações são realizadas, as tabelas relacionadas à conversa aumentam de tamanho e podem acabar afetando o desempenho do sistema. Para melhorar o desempenho mantendo registros suficientes, configure um processo para arquivar dados anteriores e limpar as tabelas usadas para conversas em andamento.

## Ativações recomendadas {#limit-conversation-data-growth__section_pjq_bxd_zpb}

Para limitar o crescimento de dados associado ao uso intenso de Virtual Agente. Bate-papo do agente, ative os trabalhos de limpeza na tabela a seguir:
{#limit-conversation-data-growth__table_qjq_bxd_zpb__entry__3}

| Nome da tabela | Resumo do trabalho de limpeza | Recomendação |
|:-|:-|-|
| AWA disponibilidade do canal do agente \[awa_agent_channel_availability\] | Remove AWAlogs de disponibilidade do canal do agente com mais de 90 dias. | Ativação recomendada. |
| AWA presença do agente \[awa_agent_presence\] | Remove AWAlogs de presença do agente com mais de 90 dias. | Ativação recomendada. |
| AWA histórico de presença do agente \[awa_agent_presence_history\] | Remove AWAlogs do histórico de presença do agente com mais de 180 dias. | Nenhuma ação necessária, já ativada. |
| AWA tamanho do documento \[awa_document_size\] | Remove AWAregistros de tamanho do documento com mais de 90 dias. | Ativação recomendada. |
| AWA estatísticas da instância \[awa_instance_stats\] | Remove AWAlogs de estatísticas de instância com mais de 60 dias. | Nenhuma ação necessária, já ativada. |
| AWA estatísticas da fila \[awa_queue_stats\] | Remove AWAlogs de estatísticas de fila com mais de 60 dias. | Nenhuma ação necessária, já ativada. |
| AWA estatísticas do canal de serviço \[awa_service_channel_stats\] | Remove AWAlogs de estatísticas do canal de serviço com mais de 60 dias. | Nenhuma ação necessária, já ativada. |
| AWA item de trabalho \[awa_work_item\] | Remove AWAlogs de item de trabalho que foram aceitos ou cancelados e têm mais de 90 dias. | Ativação recomendada. |
| Interação \[interação\] | Remove logs de interação com mais de 90 dias. | Ativação recomendada. |
| Blob json de interação \[interaction_json_blob\] | Remove logs de blob JSON de interação com mais de 60 dias. | Ativação recomendada. |
| Perfil de grupo em tempo real \[live_group_profile\] | Remove logs de perfil de grupo dinâmico com mais de 60 dias. | Ativação recomendada. |
| Consumidor \[sys_cs_consumer\] | Remove logs de consumidor que têm um ID de usuário \[user_id\] 5136503cc611227c0183e96598c4f706 e têm mais de 60 dias. | Já definido como ativo ou adicione Nome \[nome\]: Usuário convidado à condição. |
| Contexto do dispositivo do consumidor \[sys_cs_consumer_device_context\] | Adiciona regra em cascata de referência \[reference_cascade_rule\]: Regra de exclusão à coluna Conta do consumidor \[consumer_account\]. | Nenhuma ação necessária. |
| Conversa \[sys_cs_conversation\] | Remove logs de conversa com mais de 60 dias. | Nenhuma ação necessária, já ativada. |
[ ]

{#limit-conversation-data-growth__table_qjq_bxd_zpb}

## Quais tabelas devem ser limpas {#limit-conversation-data-growth__section_pzk_xrn_cpb}

Essas tabelas devem ser limpas porque podem crescer para os milhões de registros em instâncias de execução longa:

* Histórico de presença do agente \[awa_agent_presence_history\]
* AWA Tamanho do documento \[awa_document_size\]
* AWA Item de trabalho \[awa_work_item\]
* Consumidor \[sys_cs_consumer\]
* Contexto do dispositivo do consumidor \[sys_cs_consumer_device_context\]
* Conversa \[sys_cs_conversation\]
* Interação \[interação\]
* Interação JSON blob \[interaction_json_blob\]
* Perfil do grupo em tempo real \[live_group_profile\]

{#limit-conversation-data-growth__ul_w1s_1sn_cpb}

Há outras tabelas relacionadas, como as tabelas Mensagem de conversa \[sys_cs_message\] e Mensagem do feed dinâmico \[live_message\], que também podem se tornar grandes. Essas tabelas têm reference_cascade_rule_deleteatributos que fazem com que eles sejam limpos como um efeito colateral da limpeza das tabelas na lista anterior.

## Quais registros nas tabelas devem ser excluídos {#limit-conversation-data-growth__section_axy_3sn_cpb}

A configuração de Limpeza automática permite selecionar Campo de correspondência e. Idade em segundos campos. . Campo de correspondência o campo corresponde a uma coluna de data na tabela e o. Idade em segundos o campo indica quando as exclusões são acionadas. Quando um registro atinge um ponto em que Campo de correspondência o campo tem uma data que está mais distante no passado do que Idade em segundos , o limpador exclui o registro quando ele é executado.

O ideal é Campo de correspondência o campo deve indicar por quanto tempo o registro está ativo. As colunas na tabela a seguir funcionam bem como Campo de correspondência campo das tabelas em questão, com a condição adicional em Condições campo onde indicado.
{#limit-conversation-data-growth__table_u4c_nsn_cpb__entry__4}

| Tabela | Coluna | A coluna está indexada? | Condição adicional |
|:-|:-|:-|:-|
| AWA disponibilidade do canal do agente \[awa_agent_channel_availability\] | Atualizado (sys_updated_on) | Não | agent.active: falso |
| AWA presença do agente \[awa_agent_presence\] | Atualizado (sys_updated_on) | Não |   |
| AWA histórico de presença do agente \[awa_agent_presence_history\] | Atualizado (sys_updated_on) | Sim |   |
| AWA tamanho do documento \[awa_document_size\] | Atualizado (sys_updated_on) | Não |   |
| AWA item de trabalho \[awa_work_item\] | Atualizado (sys_updated_on) | Sim | StateInaccepted,Cancelado |
| Interação \[interação\] | Atualizado (sys_updated_on) | Sim |   |
| Blob json de interação \[interaction_json_blob\] | Atualizado (sys_updated_on) | Não |   |
| Perfil de grupo em tempo real \[live_group_profile\] | Atualizado (sys_updated_on) | Não |   |
| Consumidor \[sys_cs_consumer\] | Atualizado (sys_updated_on) | Não | Nome: Usuário convidado |
| Conversa \[sys_cs_conversation\] | Atualizado (sys_updated_on) | Não |   |
[ ]

{#limit-conversation-data-growth__table_u4c_nsn_cpb}

interaction.closed_at e sys_cs_conversation.conversation_completed não são boas opções para Campo de correspondência porque eles não têm valores para conversas com defeito e algumas interações encerradas. As lacunas podem ser fechadas com regras de negócios que definem esta data se ela estiver vazia quando ocorrer uma mudança de estado apropriada, mas, para simplificar, use o campo sys_updated_on para essas tabelas.

Outras tabelas podem ser limitadas por condições no campo de estado que garantem que somente bate-papos encerrados sejam excluídos. Como as interações nunca devem ser deixadas em aberto por mais de alguns dias em geral, essas condições podem ser deixadas de fora para tornar as consultas mais simples e executadas mais rapidamente após a última atualização. O estado na tabela awa_work_item pode ser mais importante porque tarefas de execução mais longa, como casos, também são representadas.

O problema com a tabela sys_cs_consumer é que, embora normalmente você queira manter esses registros para corresponder novas conversas com usuários existentes, no caso de usuários convidados, um registro diferente é criado para cada conversa.

Para a tabela sys_cs_consumer_device_context, há uma referência à tabela Conta do consumidor do CS \[sys_cs_consumer_account\] (que por si só tem uma referência à tabela sys_cs_consumer), mas a referência não está marcada com reference_cascade_rule A recomendação é adicionar esta regra à referência da conta do consumidor. Dessa forma, quando o limpador exclui os registros nas tabelas sys_cs_consumer e sys_cs_consumer_account, ele também os exclui.

As tabelas awa_agent_presence e awa_agent_channel_availability não crescem por bate-papo da mesma forma que outras tabelas, mas são acessadas regularmente pelo mecanismo de atribuição e podem acabar com entradas obsoletas de usuários que não estão mais ativos. Entradas longas não usadas também devem ser limpas aqui. É preciso tomar cuidado extra com a coluna awa_agent_channel_availability porque ela pode não ser atualizada com frequência. Por esse motivo, uma condição extra deve ser adicionada a esse limpador para que somente registros associados a usuários inativos possam ser removidos.

## Quando os registros podem ser excluídos com segurança {#limit-conversation-data-growth__section_ntz_1tn_cpb}

Há várias considerações para determinar quando os registros podem ser excluídos com segurança:

* Não exclua registros de conversas em andamento.Para conversas de bate-papo baseadas em sessão, o limite de idade é de apenas alguns dias. Se conversas de SMS/mensagens estiverem incluídas, o limite de idade pode se estender para algumas semanas ou mais. Uma maneira de avaliar isso é examinar todas as propriedades do formulário com.glide.cs.\*_idle_timeout e localizar aquele com o valor mais alto.

* Não exclua registros que contribuem para painéis/relatórios sobre atividades recentes.. AWAPara interações - o painel Análise avançada inclui um indicador de tendências semanais que retrospectiva de três meses. Para oferecer suporte total a isso, você deve manter os registros Interaction e awa_work_item por pelo menos 90 dias.

* Não exclua registros se algum de seus dados precisar ser arquivado para referência posterior.O tempo disso depende do tempo de qualquer lógica personalizada adicionada para fazer o arquivamento necessário. Você deve ser capaz de configurar isso para que ele seja executado cedo o suficiente para não ser o fator decisivo.

{#limit-conversation-data-growth__ul_pw5_2tn_cpb}  
Considerando o acima exposto, os seguintes limites de idades em segundos são recomendados:

* Interaction, awa_work_item: 7776000 (90 dias - mas isso pode ser reduzido se você não usar o indicador Tendências semanais ou se quiser definir a retrospectiva para um período de tempo menor).
* sys_cs_conversation, live_group_profile, interaction_json_blob, sys_cs_consumer: 2592000 (30 dias) ou 5184000 (60 dias).
{#limit-conversation-data-growth__ul_ryg_mtn_cpb}

## Considerações de desempenho {#limit-conversation-data-growth__section_nr5_ntn_cpb}

Os índices sys_updated_on são necessários para as tabelas?

Os testes foram executados em uma instância que tinha mais de 12,000,000 interações, com uma limpeza de tabela configurada para uma tabela com um índice no campo sys_updated_on (interação) e um que não tem (interaction_json_blob). Em ambos os casos, para execuções iniciais e subsequentes, o tempo gasto fazendo exclusões (potencialmente muitos minutos) superou em muito o tempo gasto na consulta dos registros (2 segundos ou menos). Dado esse resultado, nenhum índice adicional precisa ser adicionado às tabelas, pois o impacto no desempenho seria mínimo.

Quando o trabalho de limpeza de tabela inicial e repetido deve ser executado?

O sys_trigger do limpador de tabela é executado uma vez por hora. Se um ou mais limpadores forem definidos em tabelas com muitos registros desatualizados, o número de exclusões feitas durante essa primeira execução pode ser muito alto e colocar uma carga adicional no sistema. Antes de ajustar e ativar a configuração de limpeza de tabela, mude temporariamente esta programação de limpeza de tabela para que sua próxima execução ocorra fora do horário comercial (um momento em que o sistema geralmente está sob uma carga mais leve).

Se não houver horas de folga, há algumas propriedades que regem os limpadores de tabela que podem ajudar. Em particular, o glide.db.tablecleaner.chunk_delete_max_time_spent limita quanto tempo o limpador gasta tentando excluir registros em lote durante uma única execução. O valor é fornecido em segundos e o padrão é 1200 (20 minutos). Isso significa que, na configuração do sistema base, o limpador de tabela é executado por hora por no máximo 20 minutos (para referência, durante um teste, cerca de 400 000 interações podem ser excluídas em 20 minutos, incluindo exclusões em cascata). Se 20 minutos a cada hora for muito agressivo, o valor da propriedade poderá ser reduzido.

