Suporte de alta disponibilidade para bancos de dados do OLTP in-memory

Aplica-se a:SQL Server

Os bancos de dados que contêm tabelas com otimização de memória, com ou sem procedimentos armazenados compilados nativos, são totalmente compatíveis com Grupos de Disponibilidade AlwaysOn. Não existe diferença na configuração e na compatibilidade de bancos de dados que contêm objetos do OLTP in-memory em comparação com os que não contêm.

As alterações nas tabelas com otimização de memória na réplica primária são aplicadas às tabelas na réplica secundária durante a fase refazer. Isso permite um failover rápido para a réplica secundária, pois os dados já estão na memória. As tabelas estão disponíveis para consultas de leitura em réplicas secundárias que foram configuradas para acesso de leitura.

Grupos de Disponibilidade AlwaysOn e bancos de dados OLTP in-memory

Configurar bancos de dados com componentes do OLTP in-memory fornece os seguintes benefícios:

  • Uma experiência totalmente integrada
    Você pode configurar seus bancos de dados que contêm tabelas com otimização de memória usando o mesmo assistente com o mesmo nível de suporte para réplicas secundárias síncronas e assíncronas. Além disso, o monitoramento de integridade é fornecido usando o já familiar painel do AlwaysOn no SQL Server Management Studio.

  • Tempo de Failover comparável
    As réplicas secundárias mantêm o estado na memória das tabelas duráveis com otimização de memória. No caso de failover automático ou forçado, o tempo de failover para o novo primário é comparável às tabelas baseadas em disco, já que nenhuma recuperação é necessária. As tabelas com otimização de memória criadas como SCHEMA_ONLY têm suporte nesta configuração. No entanto, as alterações para essas tabelas não são registradas, portanto, nenhum dado existirá nessas tabelas na réplica secundária.

  • Secundária Legível
    Você pode acessar e consultar tabelas com otimização de memória na réplica secundária, caso ela tenha sido configurada para acesso de leitura. No SQL Server 2016 (13.x), o carimbo de data/hora de leitura na réplica secundária está em sincronização próxima com o carimbo de data/hora de leitura na réplica primária, o que significa que as alterações na réplica primária se tornarão rapidamente visíveis na réplica secundária. Esse comportamento de sincronização próxima é diferente no OLTP In-Memory do SQL Server 2014 (12.x).

Considerações

  • O SQL Server 2019 apresentou a fase refazer paralela para bancos de dados do grupo de disponibilidade com otimização de memória. No SQL Server 2016 e 2017, as tabelas baseadas em disco não usarão a fase refazer paralela se um banco de dados em um grupo de disponibilidade também tiver otimização de memória.

Instância de Clustering de Failover (FCI) e bancos de dados OLTP na memória

Para obter alta disponibilidade em uma configuração de armazenamento compartilhado, você pode configurar a instância do cluster de failover com bancos de dados usando tabelas com otimização de memória. Considere os seguintes fatores como parte da configuração de uma FCI:

  • Objetivo de tempo de recuperação
    O tempo de failover provavelmente será maior conforme as tabelas com otimização de memória precisem ser carregadas na memória antes que o banco de dados seja disponibilizado.

  • Tabelas SCHEMA_ONLY
    Lembre-se de que as tabelas SCHEMA_ONLY estarão vazias e sem linhas após o failover. Isso é projetado e definido pelo aplicativo. Esse é exatamente o mesmo comportamento de quando você reinicia um banco de dados do OLTP in-memory com uma ou mais tabelas SCHEMA_ONLY.

Suporte para replicação de transação em OLTP na memória

As tabelas que atuam como assinantes de replicação transacional, com exceção da replicação transacional ponto a ponto, podem ser configuradas como tabelas com otimização de memória. Outras configurações de replicação não são compatíveis com tabelas com otimização de memória. Para obter mais informações, veja Replicação para assinantes de tabela com otimização de memória.

Confira também

Grupos de Disponibilidade AlwaysOn (SQL Server)
Visão geral dos Grupos de Disponibilidade AlwaysOn (SQL Server)
Secundárias ativas: réplicas secundárias legíveis (grupos de disponibilidade Always On)
Replicação para assinantes de tabela com otimização de memória