RootDB – eine selbstgehostete Reporting-Webanwendung

-


Kurzer Überblick über RootDB, eine selbstgehostete Open-Source-Anwendung (AGPLv3), mit der Sie Berichte basierend auf SQL-Abfragen erstellen können.

Armaturenbrett

Zusammenfassung

Entstehung des Projekts

Für die Bedürfnisse eines Kunden musste ich aus mehreren klassischen relationalen Datenbanken schnell verschiedene und unterschiedliche Nutzungsstatistiken (basierend auf Tabellen und Grafiken) erstellen und diese Berichte in eine integrieren Backoffice.

Der erste Instinkt war, mich einer Lösung zuzuwenden, die ich zuvor etwa zehn Jahre lang verwendet hatte und die MyDBR heißt. Es erfüllte perfekt seine Bedürfnisse und war gleichzeitig erschwinglich. Mit MyDBR, gut beherrscht, können Sie viele Dinge tun, aber die Schnittstelle ist wirklich veraltet und der Zugriff auf die Funktionalitäten der Grafikbibliotheken erfolgt über Wrapper in SQL.

Ich habe nach Alternativen gesucht, selbst gehostet, einfach einzurichten und zu warten und mit der gleichen Logik zum Erstellen von Berichten, aber ich habe nicht gefunden, wonach ich gesucht habe. Natürlich gibt es viele Lösungen, aber nach dem Testen ist immer etwas schief gelaufen, sei es bei der Erstellung von Berichten oder den manchmal komplizierten Voraussetzungen für das Hosting.

Daher die Idee, mit einem Kollegen eine eigene Reporting-Lösung zu erstellen – denn warum auch nicht?

Open Source

Dieses Projekt war ursprünglich kein Open-Source-Projekt und wir dachten lediglich daran, Benutzerlizenzen zu verkaufen.

Allerdings nutzen heute viele Menschen die Cloud und diese verfügt über integrierte Reporting-Lösungen, was das Interesse an dieser Art von Projekten effektiv einschränkt. Um es kurz zu machen: Ich bin nach wie vor davon überzeugt, dass nicht jeder auf die Cloud setzt und dass diese Art von Lösung für einige Leute dennoch interessant sein könnte.
Da ich Zweifel an der Relevanz des Projekts hatte, habe ich mich nie ernsthaft um eine Finanzierung bemüht, was es mir nie ermöglichte, Vollzeit daran zu arbeiten. Es hat also lange gedauert, bis wir etwas produzierten, das in einer Produktionsumgebung brauchbar war: etwa eineinhalb Jahre.
Hinzu kommt, dass dieses Projekt ohne alle ihm zugrunde liegenden Open-Source-Bausteine ​​nicht existieren würde. Und da es sich um Open Source handelt, das mich schon seit einigen Jahren unterstützt, schien es mir letztendlich viel natürlicher, dieses Projekt Open Source zu machen (AGPLv3-Lizenz), als zu versuchen, es durch Verschlüsselung des Quellcodes zu verkaufen.

RootDB?

Da wir mit SQL und JavaScript vertraut sind, wollten wir eine Lösung haben, die dem Entwickler keine Steine ​​in den Weg legt, nämlich:

  • Verwenden Sie hauptsächlich SQL zum Abrufen und Verarbeiten von Daten.
  • vollen Zugriff auf die ausgewählte Grafikbibliothek haben;

Diese Entscheidung, eine entwicklerorientierte Berichtsentwicklungsumgebung zu bevorzugen, wird vermutet, daher der Name des Projekts.

Merkmale

Ich werde Ihnen nicht alle Funktionen zeigen, da die Hauptwebsite und die Demo-Instanz diese bereits korrekt anzeigen. Ich werde daher lieber auf die Besonderheiten des Projekts eingehen.

Websocket

Die Ausführung von SQL-Abfragen kann lange dauern, insbesondere wenn die Tabellen nicht ordnungsgemäß optimiert sind. Daher ist die Schnittstelle stark auf Websockets angewiesen, um Timeout-Probleme zu vermeiden. Wenn ein Bericht ausgeführt wird, erfolgt die Ausführung der verschiedenen Abfragen asynchron und die Ansichten zeigen Ergebnisse nur an, wenn die Daten im Berichts-Websocket eintreffen.
Im Allgemeinen wird die gesamte Schnittstelle per WebSocket aktualisiert.

Grafikbibliotheken zur Auswahl

Wir bieten uneingeschränkten Zugriff auf Chart.js oder D3.js Verpackung. Es ist daher möglich, direkt auf die offizielle Dokumentation dieser beiden Bibliotheken zu verweisen.

Die Menüs gefallen uns.

-

PREV So eroberten Kakerlaken die Welt
NEXT Dieses Lidl-Produkt senkt Ihre Stromrechnung