Configurazione dell'archiviazione per le tabelle con ottimizzazione per la memoriaConfiguring Storage for Memory-Optimized Tables

È necessario configurare la capacità di archiviazione e le operazioni di input/output al secondo (IOPS).You need to configure storage capacity and input/output operations per second (IOPS).

Capacità di archiviazioneStorage Capacity

Usare le informazioni in Stimare i requisiti di memoria delle tabelle con ottimizzazione per la memoria per stimare le dimensioni in memoria delle tabelle con ottimizzazione per la memoria durevoli del database.Use the information in Estimate Memory Requirements for Memory-Optimized Tables to estimate the in-memory size of the database's durable memory-optimized tables. Poiché gli indici non vengono mantenuti per le tabelle con ottimizzazione per la memoria, non includere le dimensioni degli indici.Because indexes are not persisted for memory-optimized tables, do not include the size of indexes. Una volta determinata la dimensione, è necessario fornire uno spazio libero su disco quattro volte superiore alla dimensione delle tabelle in memoria durevoli.Once you determine the size, you need to provide disk space that is four times the size of durable, in-memory tables.

IOPS di archiviazioneStorage IOPS

OLTP in memoriaIn-Memory OLTP consente di aumentare notevolmente la velocità effettiva del carico di lavoro. can significantly increase your workload throughput. Pertanto, è importante verificare che le operazioni di IO non rappresentino un collo di bottiglia.Therefore, it is important to ensure that IO is not a bottleneck.

  • Quando si esegue la migrazione delle tabelle basate su disco nelle tabelle con ottimizzazione per la memoria, verificare che il log delle transazioni sia in un supporto di archiviazione che supporti l'attività aumentata del log delle transazioni.When migrating disk-based tables to memory-optimized tables, make sure that the transaction log is on a storage media that can support increased transaction log activity. Ad esempio, se il supporto di archiviazione supporta le operazioni del log delle transazioni a 100 MB/sec e le tabelle con ottimizzazione per la memoria restituiscono prestazioni cinque volte superiori, anche il supporto di archiviazione del log delle transazioni deve essere in grado di supportare un incremento di cinque volte delle prestazioni, per impedire all'attività del log delle transazioni di diventare un collo di bottiglia.For example, if your storage media supports transaction log operations at 100 MB/sec, and memory-optimized tables result in five times greater performance, the transaction log's storage media must be able to also support five times performance improvement, to prevent the transaction log activity from becoming a performance bottleneck.

  • Le tabelle con ottimizzazione per la memoria sono persistenti nei file distribuiti in uno o più contenitori.Memory-optimized tables are persisted in files distributed across one or more containers. In genere è necessario eseguire il mapping di ogni contenitore al relativo spindle, che consente di aumentare la capacità di archiviazione e migliorare gli IOPS.Each container should typically be mapped to its own spindle and is used both for increased storage capacity and improved IOPS. È necessario assicurarsi che le operazioni di IOPS sequenziali del supporto di archiviazione possono supportare un aumento pari a 3 volte la velocità effettiva del log delle transazioni.You need to ensure that that sequential IOPS of the storage media can support a 3 times increase in transaction log throughput.

    Ad esempio, se le tabelle con ottimizzazione per la memoria generano 500 MB/sec di attività nel log delle transazioni, l'archiviazione per le tabelle con ottimizzazione per la memoria deve supportare IOPS da 1,5 GB/sec.For example, if memory-optimized tables generate 500MB/sec of activity in the transaction log, the storage for memory-optimized tables must support 1.5GB/sec IOPS. La necessità di supportare un aumento pari a 3 volte la velocità effettiva del log delle transazioni deriva dall'analisi che le coppie di file di dati e differenziali vengono prima scritti con dati iniziali e quindi devono essere letti e riscritti come parte di un'operazione di merge.The need to support a 3 times increase in transaction log throughput comes from the observation that the data and delta file pairs are first written with the initial data and then need to be read/re-written as part of a merge operation.

    Un altro fattore per stimare gli IOPS per l'archiviazione è il tempo di recupero per le tabelle con ottimizzazione per la memoria.Another factor in estimating the IOPS for storage is the recovery time for memory-optimized tables. I dati delle tabelle durevoli devono essere letti in memoria prima che un database viene reso disponibile alle applicazioni.Data from durable tables must be read into memory before a database is made available to applications. In genere, il caricamento dei dati nelle tabelle con ottimizzazione per la memoria può essere eseguito alla velocità delle operazioni di IOPS.Commonly, loading data into memory-optimized tables can be done at the speed of IOPS. Pertanto se l'archiviazione totale per le tabelle con ottimizzazione per la memoria durevoli è di 60 GB e si desidera essere in grado di caricare i dati in 1 minuto, le operazioni di IOPS per l'archiviazione devono essere impostati su 1 GB/sec.So if the total storage for durable, memory-optimized tables is 60 GB and you want to be able to load this data in 1 minute, the IOPS for the storage must be set at 1 GB/sec.

  • Se il numero di spindle è pari, a differenza di SQL Server 2014 i file del checkpoint vengono distribuiti in modo uniforme tra tutti gli spindle.If you have even number of spindles, unlike in SQL Server 2014, the checkpoint files will be distributed uniformly across all spindles.

CrittografiaEncryption

In SQL Server 2016SQL Server 2016 lo spazio di archiviazione per le tabelle con ottimizzazione per la memoria viene crittografato come parte dell'abilitazione di Transparent Data Encryption nel database.In SQL Server 2016SQL Server 2016, the storage for memory-optimized tables will be encrypted as part of enabling TDE on the database. Per altre informazioni, vedere Transparent Data Encryption (TDE).For more information, see Transparent Data Encryption (TDE).

Vedere ancheSee Also

Creazione e gestione dell'archiviazione per gli oggetti con ottimizzazione per la memoriaCreating and Managing Storage for Memory-Optimized Objects