OLTP en memoria y optimización en memoriaIn-Memory OLTP and Memory-Optimization)

SE APLICA A: síSQL Server síAzure SQL Database noAzure SQL Data Warehouse noAlmacenamiento de datos paralelos APPLIES TO: yesSQL Server yesAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

OLTP en memoriaIn-Memory OLTP puede mejorar considerablemente el rendimiento de escenarios de datos transitorios, carga de datos, ingesta de datos y procesamiento de transacciones.can significantly improve the performance of transaction processing, data ingestion and data load, and transient data scenarios. Para saltar al código básico y al conocimiento que necesita para probar rápidamente su propia tabla optimizada para memoria y procedimiento almacenado con compilación nativa, consulteTo jump into the basic code and knowledge you need to quickly test your own memory-optimized table and natively compiled stored procedure, see

Hemos cargado en YouTube un vídeo de 17 minutos que explica OLTP en memoria en SQL Server y muestra las ventajas de rendimiento.We have uploaded to YouTube a 17-minute video explaining In-Memory OLTP on SQL Server, and demonstrating the performance benefits.

Para información más detallada de OLTP en memoria y una revisión de los escenarios que ven beneficios de rendimiento gracias a la tecnología:For a more detailed overview of In-Memory OLTP and a review of scenarios that see performance benefits from the technology:

Cabe decir que OLTP en memoriaIn-Memory OLTP es la tecnología de SQL ServerSQL Server con la que se mejora el rendimiento del procesamiento de transacciones.Note that OLTP en memoriaIn-Memory OLTP is the SQL ServerSQL Server technology for improving performance of transaction processing. Para obtener más información sobre la tecnología de SQL ServerSQL Server con la que se mejora el rendimiento de las consultas analíticas y de los informes, vea la Guía de índices de almacén de columnas.For the SQL ServerSQL Server technology that improves reporting and analytical query performance see Columnstore Indexes Guide.

Se han realizado varias mejoras de OLTP en memoria de SQL Server 2016 (13.x)SQL Server 2016 (13.x) y SQL Server 2017 (14.x)SQL Server 2017 (14.x), además de Base de datos SQL de AzureAzure SQL Database.Several improvements have been made to In-Memory OLTP in SQL Server 2016 (13.x)SQL Server 2016 (13.x) and SQL Server 2017 (14.x)SQL Server 2017 (14.x), as well as in Base de datos SQL de AzureAzure SQL Database. El área expuesta de Transact-SQL aumentó para facilitar la migración de aplicaciones de base de datos.The Transact-SQL surface area has been increased to make it easier to migrate database applications. Se agregó compatibilidad para realizar operaciones ALTER para tablas optimizadas para memoria y procedimientos almacenados con compilación nativa, con el fin de facilitar el mantenimiento de las aplicaciones.Support for performing ALTER operations for memory-optimized tables and natively compiled stored procedures has been added, to make it easier to maintain applications.

Nota

PruébeloTry it out

OLTP en memoria está disponible en las bases de datos Azure SQL en el nivel Premium y crítico para la empresa y en grupos elásticos.In-Memory OLTP is available in Premium and Business Critical tier Azure SQL databases and elastic pools. Para una introducción a OLTP en memoria y al Almacén de columnas en Azure SQL Database, consulte Optimizar el rendimiento con las tecnologías In-Memory en SQL Database.To get started with In-Memory OLTP, as well as Columnstore in Azure SQL Database, see Optimize Performance using In-Memory Technologies in SQL Database.

En esta secciónIn this section

Esta sección proporciona los temas siguientes:This section provides includes the following topics:

TemaTopic DescripciónDescription
Inicio rápido 1: Tecnologías de OLTP en memoria para acelerar el rendimiento de Transact-SQLQuick Start 1: In-Memory OLTP Technologies for Faster Transact-SQL Performance Profundice en OLTP en memoriaDelve right into In-Memory OLTP
Información general y escenarios de usoOverview and Usage Scenarios Información general sobre OLTP en memoria y cuáles son los escenarios que verán beneficios en el rendimiento.Overview of what In-Memory OLTP is, and what are the scenarios that see performance benefits.
Requisitos para usar tablas con optimización para memoriaRequirements for Using Memory-Optimized Tables Describe los requisitos de hardware y software y las instrucciones para utilizar tablas optimizadas para memoria.Discusses hardware and software requirements and guidelines for using memory-optimized tables.
Ejemplos de código de OLTP en memoriaIn-Memory OLTP Code Samples Contiene ejemplos de código en los que se muestra cómo crear y utilizar una tabla optimizada para memoria.Contains code samples that show how to create and use a memory-optimized table.
Memory-Optimized TablesMemory-Optimized Tables Presenta las tablas optimizadas para memoria.Introduces memory-optimized tables.
Variables de tabla con optimización para memoriaMemory-Optimized Table Variables Ejemplo de código que muestra cómo utilizar una variable de tabla optimizada para memoria en lugar de una variable de tabla tradicional para reducir el uso de tempdb.Code example showing how to use a memory-optimized table variable instead of a traditional table variable to reduce tempdb use.
Índices de las tablas con optimización para memoriaIndexes on Memory-Optimized Tables Presenta los índices optimizados para memoria.Introduces memory-optimized indexes.
Procedimientos almacenados compilados de forma nativaNatively Compiled Stored Procedures Presenta los procedimientos almacenados compilados de forma nativa.Introduces natively compiled stored procedures.
Administrar memoria para OLTP en memoriaManaging Memory for In-Memory OLTP Descripción y administración del uso de memoria en el sistema.Understanding and managing memory usage on your system.
Crear y administrar el almacenamiento de objetos con optimización para memoriaCreating and Managing Storage for Memory-Optimized Objects Describe los archivos delta y de datos, que almacenan información sobre las transacciones en tablas optimizadas para memoria.Discusses data and delta files, which store information about transactions in memory-optimized tables.
Hacer copia de seguridad, restaurar y recuperar tablas con optimización para memoriaBackup, Restore, and Recovery of Memory-Optimized Tables Describe las copias de seguridad, las restauraciones y las recuperaciones para tablas optimizadas para memoria.Discusses backup, restore, and recovery for memory-optimized tables.
Compatibilidad de Transact-SQL con OLTP en memoriaTransact-SQL Support for In-Memory OLTP Describe la compatibilidad de Transact-SQLTransact-SQL para OLTP en memoriaIn-Memory OLTP.Discusses Transact-SQLTransact-SQL support for OLTP en memoriaIn-Memory OLTP.
Compatibilidad con alta disponibilidad para bases de datos de OLTP en memoriaHigh Availability Support for In-Memory OLTP databases Describe los grupos de disponibilidad y los clústeres de conmutación por error en OLTP en memoriaIn-Memory OLTP.Discusses availability groups and failover clustering in OLTP en memoriaIn-Memory OLTP.
Compatibilidad de SQL Server con OLTP en memoriaSQL Server Support for In-Memory OLTP Enumera la sintaxis nueva y la actualizada, y las características que admiten tablas optimizadas para memoria.Lists new and updated syntax and features supporting memory-optimized tables.
Migrar a OLTP en memoriaMigrating to In-Memory OLTP Describe cómo migrar las tablas basadas en disco a tablas optimizadas para memoria.Discusses how to migrate disk-based tables to memory-optimized tables.
   

En esta sección se proporcionan vínculos a otros sitios web que contienen información sobre OLTP en memoria en SQL Server.This section provides links to other websites that contain information about In-Memory OLTP on SQL Server.

Vídeo de 17 minutos, indexado17 minute video, indexed

  • Título del vídeo: In-Memory OLTP in SQL Server 2016Video title: In-Memory OLTP in SQL Server 2016
  • Fecha de publicación: 10-03-2019Published date: 2019-03-10
  • Duración: 17:32Duration: 17:32
  • Hospedado por: Jos de Bruijn, administrador de programas sénior de SQL ServerHosted by: Jos de Bruijn, Senior Program Manager on SQL Server

La demostración se puede descargarDemo can be downloaded

En la marca de tiempo 08:09, el vídeo ejecuta una demostración dos veces.At the time mark 08:09, the video runs a demonstration twice. Puede descargar la demostración de rendimiento ejecutable que se usa en el vídeo, desde el siguiente vínculo:You can download the runnable performance demo that is used in the video, from the following link:

Los pasos generales que se muestran en el vídeo son los siguientes:The general steps seen in the video are as follows:

  1. En primer lugar, la demostración se ejecuta con una tabla normal.First the demo is run with a regular table.
  2. A continuación, vemos una edición optimizada para memoria de la tabla que se va a crear y rellenar con unos pocos clics en SQL Server Management Studio (SSMS.exe).Next we see a memory-optimized edition of the table being created and populated by a few clicks in SQL Server Management Studio (SSMS.exe).
  3. Luego, la demostración se vuelve a ejecutar con la tabla optimizada para memoria.Then the demo is rerun with the memory-optimized table. Se mide una mejora enorme de velocidad.An enormous speed improvement is measured.

Índice a cada sección del vídeoIndex to each section in the video

Vínculo de marca de tiempoTime mark link Título de la secciónSection title
A.  00:00A.  00:00 El comienzo.The beginning.

B.  00:56B.  00:56

Por qué a los clientes les tendría que importar OLTP en memoria.Why customers should care about In-Memory OLTP.
    01:03    01:03 El hardware moderno requiere una arquitectura moderna del sistema de bases de datos.Modern hardware requires modern architecture of database system.
    02:10    02:10 Explosión en los datos que se generan; las operaciones tienen que ser instantáneas (latencia baja).Explosion in data being generated; operations need to be instant (low latency).
    03:19    03:19 Reducir el TCO: haga más cosas con los recursos que tiene.Reduce TCO - do more with the resources you have.

C.  03:33C.  03:33

Qué es OLTP en memoria.What In-Memory OLTP is.
Rendimiento optimizado mediante tecnología optimizada para memoria.Performance optimized using memory-optimized technology.
    05:03    05:03 Procesamiento de transacciones hasta 30 veces más rápido.Up to 30X faster transaction processing.
    05:22    05:22 Los datos totalmente duraderos sobreviven a los errores del servidor.Fully durable - data survives server failures.
    06:15    06:15 Totalmente integrado en SQL Server.Fully integrated in SQL Server. Por lo tanto, no hay que aprender nuevos lenguajes ni herramientas.Thus no new languages or tools to learn.
    07:22    07:22 Se publicó por primera vez en SQL Server 2014, pero con mejoras importantes en 2016.First released in SQL Server 2014, but major improvements in 2016.
    07:58    07:58 Disponible en Azure SQL Database también (en la nube).Available in Azure SQL Database too (in the cloud).

D.  08:09D.  08:09

Demostración de rendimiento.Performance demonstration.
Ejecute la demostración con una tabla normal.Run the demo with a regular table.
    09:11    09:11 Menú contextual de SSMS: Informes > Análisis del rendimiento de las transaccionesSSMS context menu: Reports > Transaction Performance Analysis
    10:38    10:38 Menú contextual de SSMS: Asesor de optimización de memoriaSSMS context menu: Memory Optimization Advisor
    Cree realmente una tabla optimizada para memoria a partir de una tabla normal, además de migrar los datos.    Actually create a memory-optimized table from a regular table, plus migrate the data.
    11:28    11:28 Vuelva a ejecutar la demostración, vea una mejora de 45x en la velocidad.Rerun the demo, see 45X speed improvement.

E.  12:17E.  12:17

OLTP en memoria más fácil de usar en SQL Server 2016 (en comparación con 2014).Easier to use In-Memory OLTP in SQL Server 2016 (compared to 2014).
    12:43    12:43 Análisis simplificado para ayudar con la migración de aplicaciones.Simplified analysis to help with app migration.
    13:03    13:03 Reducción de la complejidad de la migración de aplicaciones a través de una mayor compatibilidad con el lenguaje Transact-SQL (por ejemplo, con claves externas y desencadenadores).Reduced complexity of app migration through increased Transact-SQL language support (for example, with foreign keys and triggers).
    13:56    13:56 Mejora en la capacidad de administración.Improved manageability.
    Por ejemplo, cambie el esquema y los índices, actualice automáticamente las estadísticas.    For example, change schema and indexes, auto-update of statistics.

F.  14:46F.  14:46

Escalabilidad mejorada.Improved scalability.
    15:12    15:12 Tablas grandes optimizadas para memoria (hasta 2 TB por base de datos).Large memory-optimized tables (up to 2TB per database).
    15:34    15:34 Escalado incluso mejor.Even better scaling.
    16:41    16:41 Haga más cosas con los recursos que ya tiene.Do more with the resources you already have!

G.  16:53G.  16:53

Comentarios finales.Final comments. (Termina en 17:32).(Ends at 17:32.)
   

Vea tambiénSee also

Características de la base de datosDatabase Features