Suponha que eu tenha um banco de dados Enterprise Edition que tenha configurações completamente padrão e nada além de tabelas rowstore normais. Sem RCSI, sem isolamento de snapshot e sem gatilhos. Suponha que nada exija versionamento de linha .
Claramente, essas suposições significam que não pagarei o custo extra de 14 bytes por linha do controle de versão de linha. No entanto, os secundários AG legíveis são executados sob isolamento SNAPSHOT e o isolamento SNAPSHOT requer controle de versão de linha. Então, se eu colocar meu banco de dados em um Availability Group e adicionar um secundário legível, quais cópias do meu banco de dados (se houver) começarão a pagar o custo de 14 bytes por linha do controle de versão de linha? Isso muda se eu tiver um secundário não legível além do secundário legível? E se eu fizer failover e failback?
A documentação relevante, vinculada anteriormente, não faz comentários sobre isso. Eu mesmo planejo executar experimentos, mas AGs são notoriamente fáceis de cometer erros e não quero tirar conclusões incorretas.
Todos eles.
Não, o fato de qualquer um ser legível requer controle de versão de linha.
Então você testou seu cenário de HA com sucesso.