mkaec
Uno de los conjuntos de datos sobre los que los equipos de BI necesitan informar se encuentra en una base de datos SQL con AISLAMIENTO DE INSTANTÁNEAS habilitado, pero la opción LEER INSTANTÁNEA COMPROMETIDA no está habilitada.
Este tipo de configuración da como resultado que las declaraciones SELECT tomen bloqueos, a menos que el aislamiento de instantáneas se active manualmente. Otras soluciones de generación de informes que acceden a esta base de datos utilizan procedimientos almacenados como fuente de datos y la primera línea del SP siempre es «ESTABLECER INSTANTÁNEA DE NIVEL DE AISLAMIENTO DE TRANSACCIÓN».
¿Hay alguna forma de hacer que PowerBI active el aislamiento de instantáneas antes de recuperar datos de esta base de datos? Esto sería útil tanto para DirectQuery como para la importación, ya que el aislamiento de instantáneas evitaría que PowerBI tome bloqueos de SQL.
daxer-todopoderoso
Cada conexión a una base de datos puede establecer su propio nivel de aislamiento para la lectura. Eso es seguro. Lo que tienes que hacer es saber cómo hacerlo en tu conexión de PBI a la base de datos. Estoy seguro de que hay una manera.
daxer-todopoderoso
Si todos sus sprocs usan el nivel de aislamiento de instantáneas, debe habilitar este nivel de aislamiento en toda la base de datos como predeterminado. Puede cambiar el aislamiento de la instantánea en una base de datos ejecutando este ESTABLECER READ_COMMITTED_SNAPSHOT ON; Si desea leer más sobre cómo funciona, aquí está la página SO: servidor sql – ALLOW_SNAPSHOT_ISOLATION y READ_COMMITTED_SNAPSHOT – Administradores de bases de datos Stack Ex…
Además, cuando realiza una conexión a su fuente de datos desde PBI o DAX Studio, puede especificar opciones adicionales. Tal vez puedas configurar esta opción allí…
mkaec
En respuesta a daxer-todopoderoso
No puedo activar READ_COMMITTED_SNAPSHOT porque el código de la aplicación no fue diseñado para eso. Años de desarrollo y pruebas se basaron en el código de la aplicación tomando bloqueos. Y no es mi aplicación o código. Por lo tanto, no puedo probar y actualizar el código.
Si hay una forma de habilitarlo con una opción adicional, me vendría bien un poco de ayuda. No encuentro como hacerlo. Por eso publiqué aquí.