Ich beginne ein Business-Intelligence-Projekt, bei dem der Zugriff auf zwei vorhandene Data Warehouses abstrahiert werden muss. Ich muss eine Anwendungsarchitektur entwerfen, damit Self-Service-Business-Intelligence die Daten zusammenführen und eine einzige Ansicht über die beiden vorhandenen Warehouses bereitstellen kann. Ich habe mir so etwas ausgedacht:
Ich habe Probleme mit der Virtualisierung / dem Caching und frage mich, ob es Enterprise-Design-Muster gibt, um mein Problem zu lösen. Würde eine Architektur wie diese funktionieren, um Sternschemata in Data Warehouses zu abstrahieren? Ich betrachte Produkte wie Red Hat JBoss Data Virtualization und Red Hat JBoss Data Grid (unter anderem).
Wir verwenden Hibernate derzeit nicht und nach meinem Verständnis von Data Grids handelt es sich um Schlüsselwertspeicher oder Objektspeicher, die nicht zum Zwischenspeichern eines relationalen Modells geeignet sind. Ich sollte auch erwähnen, dass wir gerne Herstellerprodukte für den Self-Service-Dashboard-Teil verwenden, aber wir werden möglicherweise in diesem Bereich einige Sonderanfertigungen vornehmen, wenn Anbieter uns nicht alles anbieten können, was wir wollen.
quelle
{key: pk, value: the_rest_of_the_row}
? Möglicherweise möchten Sie auch Tabellenmetadaten zwischenspeichern.Antworten:
Es gibt nicht viele Details darüber, was Sie hier erreichen möchten, aber nach dem, was Sie beschrieben haben, scheint es, als könnten Sie mit einem Datamart die Hauptrepositorys abstrahieren und eine minimale Teilmenge von Daten aussetzen Service die Anwendung.
Selbst wenn Sie eine anständige Anwendungsschicht entwerfen könnten , treten wahrscheinlich Leistungsprobleme auf, da eine (oder beide) der Repository-Datenbanken geladen werden. Der Vorteil des Mart-Ansatzes besteht darin, dass die Datenbank, mit der die Anwendung spricht, sehr leistungsfähig ist. Aktualisierungen finden in den Repository-DBs hinter den Kulissen statt und werden nach Belieben durchgeführt.
Ein zusätzlicher Vorteil, den Sie auch nur für einen DB-Anbieter in Ihrer Anwendungsschicht berücksichtigen müssen.
quelle