Replicazione verso tabelle ottimizzate per la memoria Abbonati

Si applica a:SQL ServerIstanza gestita di SQL di Azure

Puoi configurare come tabelle ottimizzate per l'uso della memoria le tabelle che fungono da sottoscrittori della replica snapshot e della replica transazionale, ad eccezione della replica transazionale peer-to-peer. Le tabelle ottimizzate per la memoria non sono compatibili con altre configurazioni di replica. Questa funzione è disponibile a partire da SQL Server 2016 (13.x).

Sono necessarie due configurazioni

Per configurare una tabella ottimizzata per la memoria come sottoscrittore

  1. Crea una pubblicazione transazionale. Per altre informazioni, vedere Create a Publication.

  2. Aggiungere articoli alla pubblicazione. Per altre informazioni, vedere definire un articolo.

    Se si esegue la configurazione tramite Transact-SQL, impostare il parametro @schema_option della stored procedure sp_addarticle su
    0x40000000000.

  3. Nella finestra delle proprietà dell'articolo, imposta Abilita ottimizzazione della memoria su vero.

  4. Avviare il processo di agente di snapshot per generare lo snapshot iniziale di questa pubblicazione. Per altre informazioni, vedere Creazione e applicazione dello snapshot iniziale.

  5. Creare ora una nuova sottoscrizione. Nella Procedura guidata Nuova sottoscrizione imposta Sottoscrizione con ottimizzazione per la memoria su true.

Le tabelle con ottimizzazione per la memoria dovrebbero ora iniziare a ricevere aggiornamenti dal server di pubblicazione.

Riconfigurare una replica transazionale esistente

  1. Passare alle proprietà della sottoscrizione in Management Studio e impostare Sottoscrizione con ottimizzazione per la memoria su true. Le modifiche non vengono applicate finché non si riinizia l'abbonamento.

    Se si esegue la configurazione con Transact-SQL impostare il nuovo parametro @memory_optimized della stored procedure sp_addsubscription su true.

  2. Passare alle proprietà dell'articolo di una pubblicazione in Management Studio e impostare Abilita ottimizzazione memoria su True.

    Se si esegue la configurazione tramite Transact-SQL, impostare il parametro @schema_option della stored procedure sp_addarticle su
    0x40000000000.

  3. Le tabelle ottimizzate per la memoria non supportano indici clusterizzati. Per fare in modo che la replica gestisca questa limitazione convertendo l'indice in un indice non clusterizzato nella destinazione, imposta Converti l'indice clusterizzato in non clusterizzato per l'articolo ottimizzato per la memoria su true.

    Se si esegue la configurazione con Transact-SQL impostare il parametro @schema_option della stored procedure sp_addarticle su 0x0000080000000000.

  4. Rigenera l'istantanea.

  5. Reinizializzare la sottoscrizione.

Osservazioni e restrizioni

È supportata una sola replica transazionale unidirezionale. La replica transazionale peer-to-peer non è supportata.

Non puoi pubblicare tabelle ottimizzate per la memoria.

Non puoi configurare le tabelle di replicazione sul distributore come tabelle ottimizzate per la memoria.

Non puoi includere tabelle ottimizzate per la memoria nella replicazione di fusione.

Al livello dell'abbonato, puoi configurare le tabelle coinvolte nella replica transazionale come tabelle ottimizzate per la memoria, ma le tabelle degli abbonati devono soddisfare i requisiti delle tabelle ottimizzate per la memoria. Questo requisito impone le seguenti restrizioni:

Modifica di un file dello schema

  • Se si utilizza l'opzione DURABILITY = SCHEMA_AND_DATAtabella ottimizzata per la memoria , la tabella deve avere un indice di chiave primaria non clusterizzato.

  • Il parametro ANSI_PADDING deve essere impostato su ON.