// referenzen

Echtzeit Datenbank für Business Intelligence

Der Kunde - einer der größten Digital Publisher in Deutschland - betreibt seit vielen Jahren eine Echtzeit-Datenbank in welcher eine Vielzahl an Geschäftskennzahlen und Statistiken, wie zum Beispiel das Echtzeit-Tracking der aufgerufenen Artikel und Seiten gespeichert werden. Im Lauf der Zeit wurde die Datenbank langsamer und die Anzahl der Ausfälle häufte sich. Monitoring war nur rudimentär über das System der Hersteller-Firma vorhanden. Ich habe eine individuelle Monitoring-Lösung für den Kunden entwickelt und konsequent alle auftretenden Probleme behandelt. Durch die Schulung der Angestellten des Unternehmens konnte die Lösung erfolgreich dauerhaft etabliert werden.

Übersicht über das Projekt

Der Kunde betreibt einen Druid Cluster mit 40 Nodes, 26 TB an Daten, 500 Reports und 150 Dashboards. Immer wieder treten den Produktionsbetrieb gefährdende Ausfälle auf. Teils melden die Nutzenden der Dashboards lange Ladezeiten und abbrechende Queries.

Der Hersteller der Datenbank bietet ein rudimentäres Monitoring an, was detailliert Daten erfasst, jedoch nicht an das Monitoring und Alerting des Kunden angebunden ist.

Meine Leistungen

  • Entwicklung eines Prometheus Monitoring Exporters
    • Hauptaufgabe war Design und die Entwicklung eines Prometheus Exporters, welcher speziell die für die Kundenumgebung relevanten Metriken via Druid-REST-Api ausliest und Prometheus zur Verfügung stellt
  • Entwicklung von Grafana Dashboards und Alerts
    • Die Erstellung speziell angepasster Grafana-Dashboards und Feintuning der Alerts war eine weitere wichtige Aufgabe
  • Apache Druid – Operations (Erweiterung des Clusters, Debugging von Fehlern, Housekeeping/Maintenance)
    • Übernahme von Betriebsaufgaben für den Cluster, von der Erweiterung über die Fehleranalyse bis zur Wartung
  • Entwicklung von Imply Druid Ingestions und Pivot Dashboards
    • Umsetzung von Druid Ingestions und Pivot Dashboards, die zugleich ein tieferes Verständnis der fachlichen Besonderheiten für das Monitoring lieferten
  • Schulung der Angestellten
    • Um Monitoring Systeme effektiv zu nutzen ist es essentiell, dass alle Angestellten das System kennen und Alarme so schnell wie möglich behandeln. Durch wiederholte Schulungen habe ich sichergestellt, dass der maximale Nutzen aus dem System gezogen werden konnte.

Verbesserungen

  • Reduktion der Ausfälle: Die Ausfälle konnten annähernd auf 0 reduziert werden. Bei vereinzelt auftretenden Beeinträchtigungen der Leistung konnte dank dem Monitoring System schnell die Ursache ausfindig gemacht werden.

  • Right-Sizing: Durch die erhobenen Metriken konnte die Ressourcen-Nutzung der Plattform auf den optimalen Wert angepasst werden.

  • Klare Kommunikation: Durch speziell eingerichtete Kommunikationskanäle werden die End-Anwendenden zeitnah über Wartungsmaßnahmen und Ausfälle informiert.

Technologien

Imply Druid, Apache Kafka, Java, Gradle, Spring Boot, Kubernetes, Imply Pivot, Grafana, Prometheus

← zurück zu referenzen