Cómo habilitar el nivel de aislamiento de la transacción de instantánea en SQL Server 2005 Analysis Services


INTRODUCCIÓN


En este artículo se describe cómo habilitar el nivel de aislamiento de la transacción de instantánea en Microsoft SQL Server 2005 Analysis Services. Además, en este artículo se describe cómo probar si el nivel de aislamiento de la transacción de instantánea está habilitado.

Más información


Cómo habilitar el nivel de aislamiento de la transacción de instantánea

En Analysis Services, puede usar el nivel de aislamiento de la transacción de instantánea para conectarse al origen de datos 2005 de SQL Server. Para habilitar el nivel de aislamiento de la transacción de instantánea, siga estos pasos:
  1. En SQL Server Management Studio, ejecute las siguientes instrucciones.
    ALTER DATABASE <DatabaseName>SET READ_COMMITTED_SNAPSHOT ONGOALTER DATABASE <DatabaseName>SET ALLOW_SNAPSHOT_ISOLATION ONGO
    Nota En estas instrucciones, <DatabaseName> es un marcador de posición de una base de datos del origen de datos que desea usar en Analysis Services.
  2. En Business Intelligence Development Studio, cree un nuevo proyecto de Analysis Services. Como alternativa, puede abrir un proyecto existente de Analysis Services.
  3. Si ha creado un nuevo proyecto de Analysis Services en el paso 2, siga estos pasos:
    1. En el explorador de soluciones, haga clic con el botón secundario en orígenes de datosy luego haga clic en nuevo origen de datos.
    2. En el cuadro de diálogo seleccionar cómo definir la conexión , haga clic en nuevo. Aparece el cuadro de diálogo Connection Manager .
    Si ha abierto un proyecto existente de Analysis Services en el paso 2, siga estos pasos:
    1. En la carpeta orígenes de datos , haga doble clic en el origen de datos existente.
    2. En el cuadro de diálogo Diseñador de origen de datos , haga clic en Editar. Aparece el cuadro de diálogo Connection Manager .
  4. En el cuadro de diálogo Administrador de conexiones , haga clic en cliente nativo de OLE DB\SQL nativo en la lista de proveedores .
  5. Especifique el nombre del servidor y la autenticación.
  6. Para comprobar la conexión, haga clic en probar conexión.
  7. En el panel de la izquierda, haga clic en todos.
  8. En el panel derecho, haga clic en verdadero en la lista de conexiones Mars y, a continuación, haga clic en Aceptar.
  9. En el cuadro de diálogo Diseñador de origen de datos , haga clic en instantánea en la lista de aislamiento y, después, haga clic en Aceptar.

Cómo probar si el nivel de aislamiento de la transacción de instantánea está habilitado

Para comprobar si el nivel de aislamiento de la transacción de la instantánea está habilitado, siga estos pasos:
  1. Inicie el analizador de SQL Server.
  2. Cree un nuevo seguimiento para conectarse al origen de datos que especificó en el proyecto de Analysis Services.
  3. En el cuadro de diálogo propiedades de seguimiento , haga clic en la pestaña selección de eventos .
  4. En la columna TransactionID , haga clic para activar las casillas de verificación de la fila del evento SQL: BatchCompleted y en la fila del evento SQL: BatchStarting .Nota Para mostrar la columna TransactionID , active la casilla Mostrar todas las columnas .
  5. Haga clic en Ejecutar para iniciar el seguimiento.
  6. En Business Intelligence Development Studio, procese el proyecto de Analysis Services.
  7. En el analizador de SQL Server, busque los eventos SQL: BatchCompleted y los eventos SQL: BatchStarting que tienen el mismo valor en la columna TransactionID . Normalmente, estos eventos contienen la instrucción SELECT en la columna TextData . Para estos eventos, obtenga el identificador de sesión en la columna SPID .
  8. Para conectarse al origen de datos, inicie SQL Server Management Studio.
  9. Cree una nueva consulta y, a continuación, ejecute la siguiente instrucción de Transact-SQL.
    select session_id,Transaction_Isolation_Level from sys.dm_exec_sessionswhere session_id=<SPID>
    Nota En esta instrucción, <SPID> es un marcador de posición para el identificador de sesión que obtuvo en el paso 7.
  10. En la pestaña resultados , anote el valor de la columna Transaction_Isolation_Level . Este valor indica el nivel de aislamiento de la transacción que está utilizando en el proyecto de Analysis Services. Cuando el nivel de aislamiento de la transacción de instantánea está habilitado, el valor de la columna Transaction_Isolation_Level es 5.
En la tabla siguiente se muestran los valores de la columna Transaction_Isolation_Level y los niveles de aislamiento de transacción correspondientes.
ValorNivel de aislamiento de la transacción
0Sin especificar
1ReadUncommitted
1ReadCommitted
2Repetible
cuatroSerializable
4Archivos

Referencias


Para obtener más información sobre el nivel de aislamiento de la transacción de instantánea, consulte los siguientes temas en los libros en línea de SQL Server 2005:
  • ESTABLECER el nivel de aislamiento de la transacción (Transact-SQL)
  • Habilitar los niveles de aislamiento basados en la versión de fila
  • Niveles de aislamiento en el motor de base de datos