Requisitos para utilizar las tablas con optimización para memoria

Se aplica a: SQL Server

En este artículo se describen los requisitos para la adopción de características en memoria en SQL Server.

Requisitos

Además de los requisitos de hardware y software para instalar SQL Server 2022, estos son los requisitos para usar OLTP en memoria:

  • SQL Server 2016 (13.x) SP1 (o posterior), cualquier edición. Para SQL Server 2014 (12.x) y SQL Server 2016 (13.x) RTM (pre-SP1) necesitas la edición Enterprise, Developer o Evaluation.

  • OLTP en memoria necesita la versión de 64 bits de SQL Server.

  • SQL Server necesita suficiente memoria para almacenar los datos en tablas optimizadas para memoria e índices, así como memoria adicional para admitir la carga de trabajo en línea. Para obtener más información, vea Estimar los requisitos de memoria para las tablas con optimización para memoria.

  • Cuando ejecutes SQL Server en una máquina virtual (VM), asegúrate de que haya suficiente memoria asignada a la VM para admitir la memoria necesaria para índices y tablas optimizadas para memoria. Dependiendo de la aplicación host de VM, la opción de configuración para garantizar la asignación de memoria para la VM podría denominarse Reserva de memoria o, si se usa la memoria dinámica, RAM mínima. Asegúrese de que esta configuración sea suficiente para las necesidades de las bases de datos en SQL Server.

  • Espacio en disco libre equivalente al doble del tamaño de las tablas durables optimizadas para memoria.

  • El procesador debe admitir la instrucción cmpxchg16b para usar OLTP en memoria. Todos los procesadores de 64 bits modernos admiten cmpxchg16b.

    Si usas una máquina virtual y SQL Server muestra un error provocado por un procesador más antiguo, comprueba si la aplicación host de VM tiene una opción de configuración para permitir cmpxchg16b. Si no, puedes usar Hyper-V, que admite cmpxchg16b sin necesidad de modificar ninguna opción de configuración.

  • OLTP en memoria se instala como parte de Servicios de Motor de base de datos.

    Para instalar la generación de informes (Determinar si una tabla o un procedimiento almacenado se debe pasar a OLTP en memoria) y OLTP en memoria (para administrar OLTP en memoria mediante el Explorador de objetos de SQL Server Management Studio), descarga SQL Server Management Studio (SSMS).

Nota:

Notas importantes sobre el uso de OLTP en memoria

  • En SQL Server 2016 (13.x) y versiones posteriores, no hay límite para el tamaño de las tablas optimizadas para memoria más que la memoria disponible.

  • En SQL Server 2014 (12.x), el tamaño total en memoria de todas las tablas durables de una base de datos no debe superar los 250 GB. Para obtener más información, vea Estimar los requisitos de memoria para las tablas con optimización para memoria.

Nota:

A partir de SQL Server 2016 (13.x) SP 1, las ediciones Standard y Express admiten OLTP en memoria, pero imponen cuotas con respecto a la cantidad de memoria que se puede usar para las tablas optimizadas para memoria en una base de datos determinada. En la edición Standard es de 32 GB por base de datos; en la edición Express es de 352 MB por base de datos.

  • Si crea una o más bases de datos con tablas optimizadas para memoria, debe habilitar la inicialización instantánea de archivos (IFI) mediante la concesión del derecho de usuario SE_MANAGE_VOLUME_NAME a la cuenta de inicio del servicio SQL Server. Sin IFI, los archivos de almacenamiento optimizados para memoria (datos y archivos delta) se inicializan en el momento de la creación, lo cual puede tener un impacto negativo en el rendimiento de la carga de trabajo. Para obtener más información sobre IFI, incluido cómo habilitarla, consulta Inicialización instantánea de archivos de la base de datos.

  • Problema conocido: en el caso de las bases de datos con tablas optimizadas para memoria, realizar una copia de seguridad del registro transaccional sin recuperación y, posteriormente, ejecutar una restauración del registro de transacciones con recuperación, puede dar lugar a un proceso de restauración de base de datos que no responde. Este problema también puede afectar a la funcionalidad de trasvase de registros. Para solucionar este problema, se puede reiniciar la instancia de SQL Server antes de iniciar el proceso de restauración.