Compartir a través de


Creación de una tabla optimizada para memoria

Importante

Azure Data Studio se retirará el 28 de febrero de 2026. Se recomienda usar Visual Studio Code. Para más información sobre la migración a Visual Studio Code, visite ¿Qué sucede con Azure Data Studio?

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Las tablas optimizadas para memoria son una característica de SQL Server en la que toda la tabla reside en la memoria. Una segunda copia de los datos de la tabla se conserva en el disco. Los datos de las tablas optimizadas para memoria solo se leen desde el disco durante la recuperación de la base de datos, como después de reiniciar un servidor. Las tablas optimizadas para memoria deben pertenecer a un grupo de archivos y se pueden crear en el diseñador de tablas de Azure Data Studio. Para obtener más información sobre esto, consulte esta documentación sobre el grupo de archivos optimizado para memoria.

Las tablas optimizadas para memoria deben tener una clave principal no agrupada. Para ver una introducción a las tablas optimizadas para memoria, consulte el artículo Introducción a las tablas optimizadas para memoria. Además, todas las tablas optimizadas para memoria deben tener al menos un índice.

Crear una tabla optimizada para memoria

  1. Para crear una tabla optimizada para memoria, debemos asegurarnos de que se ha creado un grupo de archivos para nuestra base de datos. En el explorador de objetos, abra una nueva ventana del editor de consultas desde el nivel de servidor, ya que crearemos una base de datos completamente nueva en la que reside nuestra tabla optimizada para memoria. En el editor de consultas, copie, pegue y ejecute el código siguiente:

        CREATE DATABASE imoltp
        GO
       --------------------------------------
        -- create database with a memory-optimized
        -- filegroup and a container.
    
        ALTER DATABASE imoltp ADD FILEGROUP imoltp_mod
         CONTAINS MEMORY_OPTIMIZED_DATA;
    
        ALTER DATABASE imoltp ADD FILE (
            name='imoltp_mod1', filename='c:\data\imoltp_mod1')
            TO FILEGROUP imoltp_mod;
    
        ALTER DATABASE imoltp
            SET MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT = ON;
        GO
        --
    

    El código anterior crea una nueva base de datos, agrega un grupo de archivos a la base de datos, agrega un archivo al grupo de archivos y, por último, establece el nivel de aislamiento de cualquier tabla optimizada para memoria agregada a esta base de datos a Snapshot.

  2. A continuación, cree la tabla abriendo la base de datos imoltp desde el explorador de objetos, haciendo clic con el botón derecho en la carpeta Tablas y seleccionando Nueva tabla. Se abrirá la vista del diseñador de tablas. Asigne la clave principal para esta tabla (asegúrese de que esta clave principal esté desagrupada desmarcando la casilla de clúster en la configuración de clave principal).

    Captura de pantalla del Diseñador de tablas que muestra cómo crear una tabla optimizada para memoria con clave principal no agrupada.

  3. En el panel de Propiedades de la tabla, active la casilla optimizada para memoria. Esto permite la lista desplegable de durabilidad, donde puede elegir si solo desea el esquema o tanto el esquema como los datos almacenados en memoria. Al elegir "Esquema" solo se guarda el esquema de la base de datos en memoria. Como puede ver a continuación, el script se actualiza para reflejar los cambios.

    Captura de pantalla del Diseñador de tablas que muestra la tabla optimizada para memoria con la configuración de solo esquema.

    Al elegir Esquema, solo se guarda el esquema en la memoria. Al elegir esquema y datos guarda el esquema y los datos en la memoria. Observe el cambio en el script.

Nota

El diseñador de tablas también admite índices hash y índices de almacén de columnas, que se pueden configurar al crear la tabla optimizada para memoria.

Paso siguiente