Alteração de índices nas tabelas nativas do Campaign

Saiba mais sobre como alterar índices nas tabelas nativas do Campaign e criar um índice clusterizado.

Descrição description

Ambiente

  • Campaign Classic
  • Campaign
  • Campaign Classic v7

Problema/Sintomas

Você tem permissão para alterar índices nas tabelas nativas do Campaign?
Você pode criar um índice clusterizado?
O índice clusterizado pode ser adicionado da definição do esquema?

Resolução resolution

Sim, o Campaign permite criar índices não clusterizados do back-end. A única diferença é que esses índices não estarão disponíveis no nível do esquema para fazer modificações no.

Como esse índice não clusterizado será mantido pelo DBA, a desfragmentação dele terá que ser tratada fora do sistema do Campaign.

Você pode criar um índice clusterizado e isso não atrapalhará a execução da campanha. Na verdade, melhorará o desempenho. As chaves primárias do esquema de campanha são convertidas em um índice exclusivo no nível do banco de dados. Como um índice clusterizado é necessário na tabela do SQL Server para melhorar o desempenho, você pode criá-lo diretamente no banco de dados.

No entanto, há um problema em usar um índice clusterizado.

  • O Campaign usa sequências para gerar o valor do campo de chave primária.
  • Como a sequência é um campo do tipo Integer (int32), ela circula entre 0 e o valor mais alto.
  • As colunas de índice agrupadas decidem a ordem física da tabela, e qualquer nova inserção pode levar ao deslocamento físico das páginas.
  • Quando a sequência atinge seu valor máximo, ela se recicla até seu extremo negativo ou até 0, dependendo da configuração feita para a sequência. Após a reciclagem, você gerará registros com um valor de CP menor que o último registro. Isso leva à inserção de registros em páginas existentes da tabela, resultando em vários turnos.
  • O Campaign executa inserções/atualizações em massa e, portanto, pode causar efeitos adversos.

Não, como o Campaign permite apenas a criação do índice exclusivo, o índice clusterizado deve ser criado no back-end.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f