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

Descrição description

Ambiente

  • Campaign Classic
  • Campaign
  • Campaign Classic v7

Problema/Sintomas

É permitido alterar índices nas tabelas nativas do Campaign?
É possível 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.

Podemos 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 o índice Clustered é necessário na tabela do SQL Server para melhorar o desempenho, podemos criá-lo diretamente do 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.
  • A sequência desde que é um campo de tipo Integer (int32) circula entre 0 e o valor mais alto.
  • As colunas de índice agrupadas decidem a ordenação 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, geraremos registros com valor de PK inferior ao último registro. Isso levará à inserção de registros em páginas existentes da tabela, levando a vários deslocamentos.
  • O Campaign executa inserções/atualizações em massa e, portanto, pode causar efeitos adversos.

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

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