Strategien zum Auffüllen einer Reporting / Data Warehouse-Datenbank

Für unsere Berichtsanwendung haben wir einen Prozess, der jede Nacht mehrere Datenbanken zu einer einzigen Berichtsdatenbank zusammenfasst. Das Schema der Berichtsdatenbank unterscheidet sich erheblich von dem der separaten 'Produktions'-Datenbanken, die wir aggregieren. Daher gibt es eine große Menge an Geschäftslogik für die Aggregation der Daten.

Derzeit wird dieser Prozess von mehreren gespeicherten Prozeduren implementiert, die jede Nacht ausgeführt werden. Wenn wir der Berichtsdatenbank weitere Details hinzufügen, wird die Logik in den gespeicherten Prozeduren immer anfälliger und nicht mehr zu handhaben.

Welche anderen Strategien können zum Auffüllen dieser Berichtsdatenbank verwendet werden?

SSIS? Dies wurde in Betracht gezogen, scheint jedoch keinen saubereren und besser wartbaren Ansatz zu bieten als die gespeicherten Prozeduren.Ein separater C # -Prozess (oder eine beliebige Sprache), der die Daten im Speicher aggregiert und dann in die Berichtsdatenbank überträgt? Dies würde es uns ermöglichen, Komponententests für die Logik zu schreiben und den Code auf eine viel wartbarere Weise zu organisieren.

Ich bin auf der Suche nach neuen Ideen oder zusätzlichen Gedanken zu den oben genannten. Vielen Dank!

Antworten auf die Frage(3)

Ihre Antwort auf die Frage