Suporte de alta disponibilidade para bancos de dados OLTP na memóriaHigh Availability Support for In-Memory OLTP databases

APLICA-SE A: SimSQL Server NãoBanco de Dados SQL do Azure NãoAzure Synapse Analytics (SQL DW) NãoParallel Data Warehouse APPLIES TO: YesSQL Server NoAzure SQL Database NoAzure Synapse Analytics (SQL DW) NoParallel Data Warehouse

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.Databases containing memory-optimized tables, with or without native compiled stored procedures, are fully supported with Always On Availability Groups. Não há nenhuma diferença na configuração e no suporte para bancos de dados que contêm objetos do OLTP na memóriaIn-Memory OLTP em comparação a aqueles sem.There is no difference in the configuration and support for databases which contain OLTP na memóriaIn-Memory OLTP objects as compared to those without.

Quando um banco de dados OLTP in-memory for implantado em uma configuração de Grupo de Disponibilidade AlwaysOn, as alterações nas tabelas com otimização de memória na réplica primária serão aplicadas à memória para as tabelas nas réplicas secundárias, quando REDO for aplicado.When an in-memory OLTP database is deployed in an Always On Availability Group configuration, changes to memory-optimized tables on the primary replica are applied in memory to the tables on the secondary replicas, when REDO is applied. Isso significa que o failover para uma réplica secundária pode ser muito rápido, pois os dados já estão na memória.This means that failover to a secondary replica can be very quick, since the data is already in memory. Além disso, as tabelas estão disponíveis para consultas em réplicas secundárias que foram configuradas para acesso de leitura.In addition, the tables are available for queries on secondary replicas that have been configured for read access.

Grupos de Disponibilidade AlwaysOn e bancos de dados OLTP in-memoryAlways On Availability Groups and In-Memory OLTP Databases

Configurar bancos de dados com componentes OLTP na memóriaIn-Memory OLTP fornece o seguinte:Configuring databases with OLTP na memóriaIn-Memory OLTP components provides the following:

  • Uma experiência totalmente integrada A fully integrated experience
    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.You can configure your databases containing memory-optimized tables using the same wizard with the same level of support for both synchronous and asynchronous secondary replicas. Além disso, o monitoramento de integridade é fornecido usando o já familiar painel do AlwaysOn no SQL Server Management Studio.Additionally, health monitoring is provided using the familiar Always On dashboard in SQL Server Management Studio.

  • Tempo de Failover comparável Comparable Failover time
    As réplicas secundárias mantêm o estado na memória das tabelas duráveis com otimização de memória.Secondary replicas maintain the in-memory state of the durable memory-optimized tables. No caso de failover automático ou forçado, o tempo de failover para o novo primário é comparável a tabelas de bases de disco, já que nenhuma recuperação é necessária.In the event of automatic or forced failover, the time to failover to the new primary is comparable to disk-bases tables as no recovery is needed. As tabelas com otimização de memória criadas como SCHEMA_ONLY têm suporte nesta configuração.Memory-optimized tables created as SCHEMA_ONLY are supported in this configuration. No entanto, as alterações para essas tabelas não são registradas e, portanto, nenhum dado existirá nessas tabelas na réplica secundária.However changes to these tables are not logged and therefore no data will exist in these tables on the secondary replica.

  • Secundária Legível Readable Secondary
    Você pode acessar e consultar tabelas com otimização de memória na réplica secundária se ela tiver sido configurada para acesso de leitura.You can access and query memory-optimized tables on the secondary replica if it has been configured for read access. No SQL Server 2016 (13.x)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 visíveis na secundária muito rapidamente.In SQL Server 2016 (13.x)SQL Server 2016 (13.x), the read timestamp on the secondary replica is in close synchronization with the read timestamp on the primary replica, which means that changes on the primary become visible on the secondary very quickly. Esse comportamento de sincronização próxima é diferente do OLTP in-memory do SQL Server 2014 (12.x)SQL Server 2014 (12.x) .This close synchronization behaviour is different from SQL Server 2014 (12.x)SQL Server 2014 (12.x) In-Memory OLTP.

Instância de Clustering de Failover (FCI) e bancos de dados OLTP na memóriaFailover Clustering Instance (FCI) and In-Memory OLTP Databases

Para obter alta disponibilidade em uma configuração de armazenamento compartilhado, você pode configurar o clustering de failover nas instâncias com um ou mais bancos de dados com tabelas com otimização de memória.To achieve high-availability in a shared-storage configuration, you can set up failover clustering on instances with one or more database with memory-optimized tables. Você precisa considerar os seguintes fatores como parte da configuração de uma FCI.You need to consider the following factors as part of setting up an FCI.

  • Objetivo de tempo de recuperação Recovery Time Objective
    O tempo de failover provavelmente será maior conforme as tabelas com otimização de memória devam ser carregadas na memória antes que o banco de dados seja disponibilizado.Failover time will likely to be higher as the memory-optimized tables must be loaded into memory before the database is made available.

  • Tabelas SCHEMA_ONLY SCHEMA_ONLY tables
    Lembre-se de que as tabelas SCHEMA_ONLY estarão vazias e sem linhas após o failover.Be aware that SCHEMA_ONLY tables will be empty with no rows after the failover. Isso é projetado e definido pelo aplicativo.This is as designed and defined by the application. E é exatamente o mesmo comportamento de quando você reinicia um banco de dados OLTP na memóriaIn-Memory OLTP com uma ou mais tabelas SCHEMA_ONLY.This is exactly the same behavior when you restart an OLTP na memóriaIn-Memory OLTP database with one or more SCHEMA_ONLY tables.

Suporte para replicação de transação em OLTP na memóriaSupport for transaction replication in In-Memory OLTP

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.Tables acting as transactional replication subscribers, excluding Peer-to-peer transactional replication, can be configured as memory-optimized tables. Outras configurações de replicação não são compatíveis com tabelas com otimização de memória.Other replication configurations are not compatible with memory-optimized tables. Para obter mais informações, veja Replicação para assinantes de tabela com otimização de memória.For more information see Replication to Memory-Optimized Table Subscribers.

Consulte TambémSee Also

Grupos de Disponibilidade AlwaysOn (SQL Server) Always On Availability Groups (SQL Server)
Visão geral dos grupos de disponibilidade AlwaysOn (SQL Server) Overview of Always On Availability Groups (SQL Server)
Secundárias ativas: réplicas secundárias legíveis (Grupos de Disponibilidade AlwaysOn) Active Secondaries: Readable Secondary Replicas (Always On Availability Groups)
Replicação para assinantes de tabela com otimização de memóriaReplication to Memory-Optimized Table Subscribers