SSRS: Cómo manejar la falta de disponibilidad del servicio cuando Datawarehouse está siendo reconstruido

dba.stackexchange https://dba.stackexchange.com/questions/15683

  •  22-10-2019
  •  | 
  •  

Pregunta

Utilizamos SSIS para construir DatawareHouse (entorno completo de Microsoft). Este es un paquete Legacy SSIS que comienza truncando todas las tablas en Datawarehouse, ejecute todas las noches.

Durante este tiempo, restringimos el acceso a la aplicación, de esta manera, la base de datos no se altera durante la integración.

1/ ¿Se puede hacer la integración en la instantánea de la base de datos, para que podamos mantener la aplicación en funcionamiento?

2/ Pregunta general: ¿Cómo manejar el período en que DatawareHouse se reconstruye? El acceso al informe debe estar prohibido hasta que todas las tablas se vuelven a rellenar con datos nuevos. ¿Existe un mecanismo de equilibrio entre 2 DataWareHouses? Se podría hacer con los platos de datos parametrizados en SSRS en lugar de la fuente de datos compartida, pero me parece que las tareas de gas.

Entorno: SQL Server 2005 y planeamos migrar a 2012.

¿Fue útil?

Solución

  1. Instantáneas de la base de datos son de solo lectura, por lo que no puede ejecutar procesos ETL de lectura/escritura contra la instantánea. Sin embargo, puede señalar informes, consultas Adhoc del usuario final, etc. en la instantánea. Esto le permitiría ejecutar los procesos ETL contra la base de datos Live sin interferir con los informes del usuario. Es necesario crear una nueva instantánea después de completar los procesos ETL. Dependiendo del almacenamiento disponible, puede almacenar múltiples copias de instantáneas.

  2. Con respecto a la actualización del almacén de datos (DW), es posible que desee implementar carga incremental procesos. En lugar de operaciones de truncar/inserción masiva, compare los datos de origen escenificado con lo que ya existe en el DW; Solo inserte/actualice los datos que deben cambiar. Esto le dará un gran beneficio en términos de recursos utilizados y el tiempo requerido para que los procesos ETL completen.

Otros consejos

Tienes un escenario bastante desagradable aquí. Si solo se accediera a su DW, un cubo OLAP, estaría bien porque los datos estarían en él durante la actualización (a menos que tenga un ROLAP configurado)

Una instantánea funcionaría para una lectura solo db durante el proceso de reconstrucción. Tendría que crear la instantánea antes de la actualización, señalar todos sus informes y apuntarlos cuando termine la actualización.

Pero, ¿por qué está prohibiendo el acceso a la Fuente DB durante la actualización? ¿Tienes miedo de que alguien inserte datos mientras se copia en el Destino DB? Podría resolverlo fácilmente con un buen control de transacciones en su paquete SSIS.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a dba.stackexchange
scroll top