Compatibilidad de SQL Server Management Studio con OLTP en memoriaSQL Server Management Studio Support for In-Memory OLTP

Se aplica a:Applies to: síSQL ServerSQL Server (todas las versiones admitidas) yesSQL ServerSQL Server (all supported versions) SíAzure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL DatabaseSe aplica a:Applies to: síSQL ServerSQL Server (todas las versiones admitidas) yesSQL ServerSQL Server (all supported versions) SíAzure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database

SQL Server Management StudioSQL Server Management Studio es un entorno integrado para administrar la infraestructura de SQL ServerSQL Server .is an integrated environment for managing your SQL ServerSQL Server infrastructure. SQL Server Management StudioSQL Server Management Studio proporciona herramientas para configurar, supervisar y administrar instancias de SQL ServerSQL Server.provides tools to configure, monitor, and administer instances of SQL ServerSQL Server. Para obtener más información, consulte SQL Server Management Studio.For more information, see SQL Server Management Studio

En las tareas de este tema se explica cómo utilizar SQL Server Management StudioSQL Server Management Studio para administrar tablas optimizadas para memoria, índices de tablas optimizadas para memoria, procedimientos almacenados compilados de forma nativa, y tipos de tablas optimizadas para memoria definidos por el usuario.The tasks in this topic describe how to use SQL Server Management StudioSQL Server Management Studio to manage memory-optimized tables; indexes on memory-optimized tables; natively compiled stored procedures; and user-defined, memory-optimized table types.

Para obtener más información sobre cómo crear tablas optimizadas para memoria mediante programación, vea Crear una tabla optimizada para memoria y un procedimiento almacenado compilado de forma nativa.For information on how to programmatically create memory-optimized tables, see Creating a Memory-Optimized Table and a Natively Compiled Stored Procedure.

Para crear una base de datos con un grupo de archivos de datos optimizados para memoriaTo create a database with a memory-optimized data filegroup

  1. En el Explorador de objetos, conéctese a una instancia del Motor de base de datos de SQL ServerSQL Server y, a continuación, expándala.In Object Explorer, connect to an instance of the SQL ServerSQL Server Database Engine and then expand that instance.

  2. Haga clic con el botón derecho en Bases de datos y, después, haga clic en Nueva base de datos.Right-click Databases, and then click New Database.

  3. Para agregar un nuevo grupo de archivos de datos optimizados para memoria, haga clic en la página Grupos de archivos .To add a new memory-optimized data filegroup, click the Filegroups page. En DATOS OPTIMIZADOS PARA MEMORIA, haga clic en Agregar grupo de archivos y escriba el nombre del grupo de archivos de datos optimizados para memoria.Under MEMORY OPTIMIZED DATA, click Add filegroup and then enter the name of the memory-optimized data filegroup. La columna con la etiqueta Archivos FILESTREAM representa el número de contenedores en el grupo de archivos.The column labeled FILESTREAM Files represents the number of containers in the filegroup. Los contenedores se agregan en la página General .Containers are added on the General page.

  4. Para agregar un archivo (contenedor) al grupo de archivos, haga clic en la página General .To add a file (container) to the filegroup, click the General page. Debajo de Archivos de la base de datos, haga clic en Agregar.Under Database files, click Add. Seleccione el Tipo de archivo Datos de FILESTREAM, especifique el nombre lógico del contenedor, seleccione el grupo de archivos optimizados para memoria y asegúrese de que Crecimiento automático/tamaño máximo se ha establecido en Ilimitado.Select File Type as FILESTREAM Data, specify the logical name of the container, select the memory-optimized filegroup, and make sure that Autogrowth / Maxsize is set to Unlimited.

    Para obtener más información sobre cómo crear una base de datos con SQL Server Management StudioSQL Server Management Studio, vea Crear una base de datos.For more information on how to create a new database by using SQL Server Management StudioSQL Server Management Studio, see Create a Database.

Para crear una tabla optimizada para memoriaTo create a memory-optimized table

  1. En el Explorador de objetos, haga clic con el botón derecho en el nodo Tablas de la base de datos, haga clic en Nuevo y, después, haga clic en Tabla con optimización para memoria.In Object Explorer, right-click the Tables node of your database, click New, and then click Memory Optimized Table.

    Se mostrará una plantilla para crear tablas optimizadas para memoria.A template for creating memory-optimized tables is displayed.

  2. Para reemplazar los parámetros de plantilla, en el menú Consulta , haga clic en Especificar valores para parámetros de plantilla .To replace the template parameters, click Specify Values for Template Parameters on the Query menu.

    Para obtener más información acerca de cómo usar plantillas, vea Template Explorer.For more information on how to use templates, see Template Explorer.

  3. En el Explorador de objetos, las tablas se ordenarán primero según las tablas basadas en disco, seguidas de las tablas optimizadas para memoria.In Object Explorer, tables will be ordered first by disk-based tables followed by memory-optimized tables. Use Detalles del Explorador de objetos para ver todas las tablas ordenadas por nombre.Use Object Explorer Details to see all tables ordered by name.

Para crear un procedimiento almacenado compilado de forma nativaTo create a natively compiled stored procedure

  1. En el Explorador de objetos, haga clic con el botón derecho en el nodo Procedimientos almacenados de la base de datos, haga clic en Nuevo y, luego, haga clic en Procedimiento almacenado compilado de forma nativa.In Object Explorer, right-click the Stored Procedures node of your database, click New, and then click Natively Compiled Stored Procedure.

    Se muestra una plantilla para crear procedimientos almacenados compilados de forma nativa.A template for creating natively compiled stored procedures is displayed.

  2. Para reemplazar los parámetros de plantilla, en el menú Consulta , haga clic en Especificar valores para parámetros de plantilla.To replace the template parameters, click Specify Values for Template Parameters on the Query menu.

    Para obtener más información sobre cómo crear un nuevo procedimiento almacenado, vea Create a Stored Procedure.For more information on how to create a new stored procedure, see Create a Stored Procedure.

Para crear un tipo de tabla optimizada para memoria definido por el usuarioTo create a user-defined memory-optimized table type

  1. En el Explorador de objetos, expanda el nodo Tipos de la base de datos, haga clic con el botón derecho en el nodo Tipos de tablas definidos por el usuario , haga clic en Nuevo y, después, haga clic en Nuevo tipo de tabla definido por el usuario optimizado de memoria.In Object Explorer, expand the Types node of your database, right-click the User-Defined Table Types node, click New, and then click User-Defined Memory Optimized Table Type.

    Aparece una plantilla para crear el tipo de tabla optimizada para memoria definido por el usuario.A template for creating user-defined memory-optimized table type is displayed.

  2. Para reemplazar los parámetros de plantilla, en el menú Consulta , haga clic en Especificar valores para parámetros de plantilla .To replace the template parameters, click Specify Values for Template Parameters on the Query menu.

    Para obtener más información sobre cómo crear un procedimiento almacenado, vea CREATE TYPE (Transact-SQL).For more information on how to create a new stored procedure, see CREATE TYPE (Transact-SQL).

Supervisión de la memoriaMemory Monitoring

Ver el uso de la memoria en el informe de objetos con optimización para memoriaView Memory Usage by Memory-Optimized Objects Report

  • En el Explorador de objetos, haga clic con el botón derecho en la base de datos, haga clic en Informes, haga clic en Informes estándar y haga clic en Uso de memoria por los objetos con optimización para memoria.In Object Explorer, right-click your database, click Reports, click Standard Reports, and then click Memory Usage By Memory Optimized Objects.

    Este informe proporciona datos detallados acerca de la utilización del espacio de memoria por parte de los objetos optimizados para memoria dentro de la base de datos.This report provides detailed data on the utilization of memory space by memory-optimized objects within the database.

Ver las propiedades de la memoria asignada y utilizada para una tabla o una base de datosView Properties for Allocated and Used Memory for a Table, Database

  1. Para obtener información sobre el uso de memoria:To get information about in-memory usage:

    • En el Explorador de objetos, haga clic con el botón derecho en la tabla optimizada para memoria, haga clic en Propiedades y, después, haga clic en la página Almacenamiento .In Object Explorer, right-click on your memory-optimized table, click Properties, and then the Storage page. El valor de la propiedad Espacio de datos indica la memoria utilizada por los datos de la tabla.The value for the Data Space property indicates the memory used by the data in the table. El valor de la propiedad Espacio de índice indica la memoria utilizada por los índices de la tabla.The value for the Index Space property indicates the memory used by the indexes on table.

    • En el Explorador de objetos, haga clic con el botón derecho en la base de datos, haga clic en Propiedades y, después, haga clic en la página General .In Object Explorer, right-click on your database, click Properties, and then click the General page. El valor de la propiedad Memoria asignada a los objetos optimizados para memoria indica la memoria asignada a los objetos optimizados para memoria en la base de datos.The value for the Memory Allocated To Memory Optimized Objects property indicates the memory allocated to memory-optimized objects in the database. El valor de la propiedad Memoria usada por los objetos optimizados para memoria indica la memoria usada por los objetos optimizados para memoria en la base de datos.The value for the Memory Used By Memory Optimized Objects property indicates the memory used by memory-optimized objects in the database.

Características admitidas en SQL Server Management StudioSQL Server Management StudioSupported Features in SQL Server Management StudioSQL Server Management Studio

SQL Server Management StudioSQL Server Management Studio admite las características y las operaciones compatibles con el motor de base de datos en las bases de datos con un grupo de archivos de datos optimizados para memoria, tablas optimizadas para memoria, índices y procedimientos compilados de forma nativa.supports features and operations that are supported by the database engine on databases with memory-optimized data filegroup, memory-optimized tables, indexes, and natively compiled stored procedures.

En los objetos de base de datos, procedimiento almacenado, tipo de tabla definido por el usuario o índice se han actualizado o ampliado las siguientes características de SQL Server Management StudioSQL Server Management Studio para que sean compatibles con OLTP en memoria.For database, table, stored procedure, user-defined table type, or index objects, the following SQL Server Management StudioSQL Server Management Studio features have been updated or extended to support In-Memory OLTP.

  • Explorador de objetosObject Explorer

    • Menús contextualesContext menus

    • Configuración de filtrosFilter settings

    • Script comoScript As

    • TareasTasks

    • InformesReports

    • PropiedadesProperties

    • Tareas de bases de datos:Database tasks:

      • Adjuntar y separar una base de datos que contiene tablas optimizadas para memoria.Attach and detach a database that contains memory-optimized tables.

        La interfaz de usuario de Adjuntar bases de datos no muestra el grupo de archivos de datos optimizados para memoria.The Attach Databases user interface does not display the memory-optimized data filegroup. Sin embargo, puede continuar con la operación para adjuntar la base de datos y la base de datos se adjuntará correctamente.However, you can proceed with attaching the database and the database will be attached correctly.

        Nota

        Si desea utilizar SQL Server Management StudioSQL Server Management Studio para adjuntar una base de datos que tiene un contenedor de grupos de archivos de datos optimizados para memoria, y si el contenedor de grupos de archivos de datos optimizados para memoria de la base de datos se creó en otro equipo, la ubicación del contenedor de grupos de archivos de datos optimizados para memoria debe ser la misma en ambos equipos.If you want to use SQL Server Management StudioSQL Server Management Studio to attach a database that has a memory-optimized data filegroup container, and if the database's memory-optimized data filegroup container was created on another computer, the location of the memory-optimized data filegroup container must be the same on both computers. Si desea que la ubicación del contenedor de grupos de archivos de datos optimizados para memoria de la base de datos sea diferente en el nuevo equipo, puede utilizar Transact-SQLTransact-SQL para adjuntar la base de datos.If you want the location of the database's memory-optimized data filegroup container to be different on the new computer, you can, use Transact-SQLTransact-SQL to attach the database. En el ejemplo siguiente, la ubicación del contenedor de grupos de archivos de datos optimizados para memoria en el nuevo equipo es C:\Folder2.In the following example, the location of the memory-optimized data filegroup container on the new computer is C:\Folder2. Pero cuando se creó el contenedor de grupos de archivos de datos optimizados para memoria en el primer equipo, la ubicación era C:\Folder1.But when the memory-optimized data filegroup container was created, on the first computer, the location was C:\Folder1.

        CREATE DATABASE[imoltp] ON

        (NAME =N'imoltp',FILENAME=N'C:\Folder2\imoltp.mdf'),

        (NAME =N'imoltp_mod1',FILENAME=N'C:\Folder2\imoltp_mod1'),

        (NAME =N'imoltp_log',FILENAME=N'C:\Folder2\imoltp_log.ldf')

        FOR ATTACH

        GO

      • Generar scripts.Generate scripts.

        En el Asistente Generar y publicar scripts, el valor predeterminado de la opción de scripting Comprobar la existencia de objetos es FALSE.In the Generate and Publish Scripts Wizard, the default value for Check for object existence scripting option is FALSE. Si el valor de la opción de scripting Comprobar la existencia de objetos se establece en TRUE en la pantalla Establecer opciones de scripting del asistente, el script generado contendría "CREATE PROCEDURE <nombre_procedimiento> AS" y "ALTER PROCEDURE <nombre_procedimiento> <definición_procedimiento>".If the value of Check for object existence scripting option is set to TRUE in the Set Scripting Options screen of the wizard, the script generated would contain "CREATE PROCEDURE <procedure_name> AS" and "ALTER PROCEDURE <procedure_name> <procedure_definition>". Cuando se ejecute, el script generado devolverá un error porque ALTER PROCEDURE no se admite en los procedimientos almacenados compilados de forma nativa.When executed, the generated script will return an error as ALTER PROCEDURE is not supported on natively compiled stored procedures.

        Para cambiar el script generado para cada procedimiento almacenado compilado de forma nativa:To change the generated script for each natively compiled stored procedure:

        1. En "CREATE PROCEDURE <nombre_procedimiento> AS", reemplace "AS" con "<definición_procedimiento>".In "CREATE PROCEDURE <procedure_name> AS", replace "AS" with "<procedure_definition>".

        2. Elimine "ALTER PROCEDURE <nombre_procedimiento> <definición_procedimiento>".Delete "ALTER PROCEDURE <procedure_name> <procedure_definition>".

      • Copiar bases de datos.Copy databases. Para las bases de datos con objetos optimizados para memoria, la creación de la base de datos en el servidor de destino y la transferencia de datos no se ejecutarán dentro de una transacción.For databases with memory-optimized objects, the creation of the database on the destination server and transfer of data will not be executed within a transaction.

      • Importe y exporte datos.Import and export data. Use la opción del SQL ServerSQL Server Copiar los datos de una o varias tablas o vistas .Use the SQL ServerSQL Server Import and Export WizardCopy data from one or more tables or views option. Si la tabla de destino es una tabla optimizada para memoria que no existe en la base de datos de destino:If the destination table is a memory-optimized table that does not exist in the destination database:

        1. En el SQL ServerSQL Server Asistente para importación y exportación, en la pantalla Especificar copia o consulta de tabla , seleccione Copiar datos de una o varias tablas o vistas.In the SQL ServerSQL Server Import and Export Wizard, in the Specify Table Copy or Query screen, select Copy data from one or more tables or views. A continuación, haga clic en Siguiente.Then click Next.

        2. Haga clic en Editar asignaciones.Click Edit Mappings. Seleccione Crear tabla de destino y haga clic en Editar SQL.Then select Create destination table and click Edit SQL. Especifique la sintaxis CREATE TABLE para crear una tabla optimizada para memoria en la base de datos de destino.Enter the CREATE TABLE syntax for creating a memory-optimized table on the destination database. Haga clic en Aceptar y complete los pasos restantes del asistente.Click OK and complete the remaining steps in the wizard.

      • Planes de mantenimiento.Maintenance plans. Las tareas de mantenimiento para reorganizar y volver a generar el índice no son compatibles con las tablas optimizadas para memoria ni con sus índices.The maintenance tasks reorganize index and rebuild index are not supported on memory-optimized tables and their indexes. Por tanto, cuando se ejecuta un plan de mantenimiento para volver a generar y reorganizar el índice, se omiten las tablas optimizadas para memoria y sus índices en las bases de datos seleccionadas.Therefore, when a maintenance plan for rebuild index and reorganize index are executed, the memory-optimized tables and their indexes in the selected databases are omitted.

        La tarea de mantenimiento para actualizar estadísticas no es compatible con la realización de un examen de muestra en las tablas optimizadas para memoria ni con sus índices.The maintenance task update statistics are not supported with a sample scan on memory-optimized tables and their indexes. Por tanto, cuando se ejecuta un plan de mantenimiento para actualizar estadísticas, las estadísticas de las tablas optimizadas para memoria y sus índices siempre se actualizan a WITH FULLSCAN, NORECOMPUTE.Therefore, when a maintenance plan for update statistics is executed, the statistics for memory-optimized tables and their indexes are always updated to WITH FULLSCAN, NORECOMPUTE.

  • Panel Detalles del Explorador de objetosObject Explorer details pane

  • Template ExplorerTemplate Explorer

Características no admitidas en SQL Server Management StudioSQL Server Management StudioUnsupported Features in SQL Server Management StudioSQL Server Management Studio

Para los objetos OLTP en memoria, SQL Server Management StudioSQL Server Management Studio no admite las características y las operaciones que tampoco admite el motor de base de datos.For In-Memory OLTP objects, SQL Server Management StudioSQL Server Management Studio does not support features and operations that are also not supported by the database engine.

Para obtener más información sobre las características de SQL ServerSQL Server no admitidas, vea Características de SQL Server no admitidas para OLTP en memoria.For more information on unsupported SQL ServerSQL Server features, see Unsupported SQL Server Features for In-Memory OLTP.

Consulte tambiénSee Also

Compatibilidad de SQL Server con OLTP en memoriaSQL Server Support for In-Memory OLTP