Considerações sobre desempenho de tabelas largas
Uma tabela larga é uma tabela com um conjunto de colunas. Quando você usar tabelas largas, tenha em mente estas considerações sobre desempenho:
As tabelas largas podem definir até 30.000 colunas. Isso aumenta o custo de manutenção dos índices na tabela. Os índices não clusterizados que são definidos devem ser índices filtrados aplicados a subconjuntos de dados. Para obter mais informações, consulte Diretrizes de criação de índice filtrado.
Os aplicativos podem adicionar e remover colunas de tabelas largas dinamicamente. Quando colunas são adicionadas ou removidas, os planos de consulta compilados também são invalidados. É recomendável criar um aplicativo de modo que ele corresponda à carga de trabalho projetada, para que as alterações de esquema sejam minimizadas.
Quando dados são adicionados e removem de uma tabela larga, o desempenho pode ser afetado. Os aplicativos devem ser criados para a carga de trabalho projetada, de forma que as alterações nos dados das tabelas sejam minimizadas.
É recomendável que o número de índices em uma tabela larga seja limitado aos índices exigidos pela lógica de negócios. Se o número de índices aumenta, aumentam também o tempo de compilação DML e os requisitos de memória.
Limite a execução de instruções DML em uma tabela larga que atualizam várias linhas de uma chave de clustering. Essas instruções podem exigir recursos de memória consideráveis para compilar e executar.
As operações de alternância de partição em tabelas largas podem ser lentas e exigir muita memória para serem processadas. Os requisitos de desempenho e memória são proporcionais ao total de colunas nas partições de origem e de destino.
Os cursores de atualização que atualizam colunas específicas de uma tabela larga devem listar as colunas explicitamente na cláusula FOR UPDATE. Isso ajudará a otimizar o desempenho quando você usar cursores.
Consulte também