Condividi tramite


Funzionalità di SQL Server supportate

Questo argomento illustra SQL Server funzionalità supportate o meno per l'uso con oggetti ottimizzati per la memoria.

SQL Server funzionalità supportate per In-Memory OLTP

Le funzionalità di SQL Server seguenti sono supportate in un database con oggetti ottimizzati per la memoria, inclusi filegroup ottimizzati per la memoria.

Per informazioni sui tipi di dati supportati, vedere Supported Data Types.

  • Opzioni e operazioni supportate in tabelle ottimizzate per la memoria. Per altre informazioni, vedere CREATE TABLE (Transact-SQL).

  • Opzioni e operazioni supportate in stored procedure compilate in modo nativo. Per altre informazioni, vedere CREATE PROCEDURE (Transact-SQL).

  • Possibilità di accedere alle tabelle ottimizzate per la memoria usando Transact-SQL interpretate. Transact-SQL interpretato fornisce un'area di superficie equivalente all'accesso alle tabelle che non sono ottimizzate per la memoria usando stored procedure non compilate in modo nativo e usando Transact-SQL. Per altre informazioni, vedere Accesso alle tabelle con ottimizzazione per la memoria utilizzando codice Transact-SQL interpretato.

  • Controllo di più versioni e controllo della concorrenza ottimistica. Per altre informazioni, vedere Transaction Isolation Levels.

  • Backup e ripristino di un database che contiene filegroup di dati ottimizzati per la memoria. Per altre informazioni, vedere Backup e ripristino di database SQL Server.

  • Viste del catalogo, viste a gestione dinamica (DMV) ed eventi estesi per il supporto. Per altre informazioni, vedere Viste di sistema, stored procedure, tipi di attesa e DMV per OLTP in memoria.

  • oggetti di gestione SQL Server. Per altre informazioni, vedere Supporto di SQL Server Management Objects per OLTP in memoria.

  • SQL Server Management Studio. Per altre informazioni, vedere Supporto di SQL Server Management Studio per OLTP in memoria.

  • SQL Server PowerShell. Per ulteriori informazioni, vedere Panoramica di SQL Server PowerShell.

  • Importazione ed esportazione dei dati per operazioni bulk tramite l'utilità bcp. Per altre informazioni, vedere Importare ed esportare dati bulk usando l'utilità bcp (SQL Server).

  • Recupero a seguito dell'arresto anomalo del sistema.

  • Più contenitori in un filegroup di dati ottimizzato per la memoria per archiviare oggetti di OLTP in memoria e ridurre il tempo necessario per il pieno recupero dell'operatività (RTO, Recovery Time Objective).

  • SQL Server blocchi del log delle transazioni calcolano checksum e convalidano.

  • Nuovo hint di tabella SNAPSHOT. Per altre informazioni, vedere Hint di tabella (Transact-SQL).

  • Livello DB COMPAT.

  • Database parzialmente indipendente. L'autenticazione di database indipendenti è supportata, Tuttavia, tutti gli oggetti OLTP in memoria sono contrassegnati come entità che interrompono l'indipendenza nel file DMV dm_db_uncontained_entities.

  • Service Broker, con limitazioni. Non è possibile accedere a una coda da una stored procedure compilata in modo nativo, né a una coda in un database remoto in una transazione che accede a tabelle ottimizzate per la memoria.

  • Clustering di failover: nell SQL Server'ambito dell'offerta AlwaysOn alwaysOn, le istanze del cluster di failover AlwaysOn sfruttano la funzionalità WSFC (Windows Server Failover Clustering) per offrire disponibilità elevata locale tramite ridondanza a livello di server-istanza di un cluster di failover (FCI). Per altre informazioni, vedere Istanze del cluster di failover Always On (SQL Server).

  • Integrazione con AlwaysOn: SQL Server offre diverse opzioni per la creazione di disponibilità elevata per un server o un database, tra cui AlwaysOn. Per altre informazioni, vedere Soluzioni a disponibilità elevata (SQL Server).

  • Log shipping: SQL Server Log shipping consente di inviare automaticamente backup del log delle transazioni da un database primario in un'istanza del server primario a uno o più database secondari in istanze del server secondario separate. Per altre informazioni, vedere Informazioni sul log shipping (SQL Server).

  • La replica transazionale in tabelle ottimizzate per la memoria nei sottoscrittori è supportata con alcune restrizioni. Per altre informazioni, vedere Replica in sottoscrittori di tabelle con ottimizzazione per la memoria.

  • Resource Governor: SQL Server Resource Governor è una funzionalità che è possibile usare per gestire SQL Server carico di lavoro e utilizzo delle risorse di sistema. Resource Governor consente di specificare i limiti sulla quantità di CPU, I/O fisici e memoria che può essere usata dalle richieste in ingresso dell'applicazione. Per ulteriori informazioni, vedere Managing Memory for In-Memory OLTP e Resource Governor.

  • In OLTP in memoria sono presenti restrizioni per le tabelle codici supportate per le colonne di tipo (var)char nelle tabelle ottimizzate per la memoria e nelle regole di confronto supportate utilizzate negli indici e nelle stored procedure compilate in modo nativo. Per altre informazioni, vedere Collations and Code Pages.

  • Supporto BACPAC.

SQL Server funzionalità non supportate per In-Memory OLTP

Le funzionalità di SQL Server seguenti non sono supportate in un database con oggetti ottimizzati per la memoria ,inclusi filegroup di dati ottimizzati per la memoria.

Funzionalità non supportata Descrizione della funzionalità
Compressione dei dati per tabelle ottimizzate per la memoria. È possibile utilizzare la funzionalità di compressione dei dati per comprimere i dati in un database e ridurre le dimensioni del database. Per altre informazioni, vedere Data Compression.
Partizionamento di tabelle ottimizzate per la memoria e di indici HASH. I dati di tabelle e indici partizionati vengono divisi in unità distribuibili tra più filegroup in un database. Per ulteriori informazioni, vedere Partitioned Tables and Indexes.
Transparent Data Encryption (TDE) sul filegroup di dati ottimizzato per la memoria di un database. Transparent Data Encryption (TDE) esegue la crittografia e la decrittografia I/O in tempo reale dei file di dati e di log. Per altre informazioni, vedere Transparent Data Encryption (TDE).

È possibile abilitare TDE in un database contenente oggetti di OLTP in memoria. Se la funzionalità TDE è abilitata, i record del log di OLTP in memoria vengono crittografati. I file del checkpoint per le tabelle durevoli non vengono crittografati, anche se TDE è abilitata nel database.
Replica Le configurazioni di replica diverse dalla replica transazionale in tabelle ottimizzate per la memoria nei sottoscrittori non sono compatibili con tabelle o viste che fanno riferimento a tabelle ottimizzate per la memoria. La replica con sync_mode='snapshot del database' non è supportata se è presente un filegroup ottimizzato per la memoria. Per altre informazioni, vedere Replica in sottoscrittori di tabelle con ottimizzazione per la memoria.
MARS (Multiple Active Result Sets) MARS (Multiple Active Result Set) non è supportato con le tabelle ottimizzate per la memoria. L'errore può inoltre indicare l'utilizzo di un server collegato. Il server collegato può usare MARS. I server collegati non sono supportati con le tabelle ottimizzate per la memoria. Connettersi direttamente al server e al database che ospita le tabelle ottimizzate per la memoria.
Mirroring Il mirroring del database è una soluzione per aumentare la disponibilità di un database SQL Server. Per altre informazioni, vedere Mirroring del database (SQL Server).
Ricompilazione del log La ricompilazione del log, tramite il comando attach o l'istruzione ALTER DATABASE, non è supportata per i database che contengono un filegroup MEMORY_OPTIMIZED_DATA.
Server collegato Per altre informazioni, vedere Server collegati (Motore di database).
Registrazione bulk Indipendentemente dal modello di recupero del database, tutte le operazioni nelle tabelle durevoli ottimizzate per la memoria vengono sempre registrate completamente.
Registrazione minima La registrazione minima non è supportata dalle tabelle ottimizzate per la memoria. Per altre informazioni sulla registrazione minima, vedere Log delle transazioni (SQL Server) e prerequisiti per la registrazione minima nell'importazione bulk.
Rilevamento modifiche È possibile abilitare il rilevamento delle modifiche in un database con oggetti di OLTP in memoria, tuttavia le modifiche nelle tabelle ottimizzate per la memoria non vengono rilevate.
trigger DDL I trigger DDL a livello di database non sono supportati con tabelle di OLTP in memoria e stored procedure compilate in modo nativo.
Change Data Capture (CDC) Evitare di abilitare CDC in un database che include oggetti di OLTP in memoria, poiché impedisce determinate operazioni, ad esempio DROP.
Indipendenza del database L'indipendenza del database non è supportata in un database che include stored procedure compilate in modo nativo e tabelle ottimizzate per la memoria. Per altre informazioni, vedere Database indipendenti
Connessione di contesto: L'accesso a tabelle ottimizzate per la memoria che usano la connessione del contesto dall'interno di stored procedure CLR non è supportato.
Cursori Keyset e cursori dinamici sulle query che accedono a tabelle ottimizzate per la memoria. Tali query diventano statiche e quindi di sola lettura.
TABLESTAMP TABLESTAMP non è supportato. Per altre informazioni, vedere FROM (Transact-SQL).
AUTO_CLOSE AUTO_CLOSE non è supportato. Per altre informazioni, vedere Set the AUTO_CLOSE Database Option to OFF.
Snapshot del database Gli snapshot del database non sono supportati. Per altre informazioni, vedere Snapshot del database (SQL Server).
DDL transazionale La DDL transazionale non è supportata nella funzionalità OLTP in memoria.
Notifiche degli eventi Le notifiche degli eventi non sono supportate. Per altre informazioni, vedere Event Notifications.
Modalità fiber La modalità fiber non è supportata con OLTP in memoria.
Gestione basata su criteri. Le modalità "impedisci esecuzione" e "solo log" della funzionalità di gestione basata su criteri non sono supportate. La presenza di tali criteri nel server può impedire la corretta esecuzione della DDL di OLTP in memoria. Le modalità Su richiesta e Su pianificazione sono supportate.
Distribuzione/estrazione con DACFx. La distribuzione/estrazione DAC Framework non è supportata nella funzionalità OLTP in memoria.

Salvo alcune eccezioni, le transazioni tra database non sono supportate. Nella tabella seguente vengono descritti i casi supportati e le relative restrizioni. Vedere anche Query tra database.

Database Consentito Descrizione
Database utente, model e msdb No Query e transazioni tra database non sono supportate.

Query e transazioni che accedono a tabelle ottimizzate per la memoria o a stored procedure compilate in modo nativo non possono accedere ad altri database, ad eccezione del master del database di sistema (accesso in sola lettura) e di tempdb.
Database delle risorse e tempdb Non vi sono restrizioni per le transazioni tra database che, oltre a un singolo database utente, utilizzano solo un database delle risorse e tempdb.
master Sola lettura Il commit delle transazioni tra database che riguardano OLTP in memoria e il database master non viene eseguito se sono incluse scritture nel database master. Le transazioni tra database che eseguono solo letture dal master e utilizzano un solo database utente sono consentite.

Vedere anche

Supporto di SQL Server per OLTP in memoria