Ich habe vor geraumer Zeit schon von meinem DB Datenmining berichtet, dieses wird auch weiterhin durchgeführt. Nun ist es bedauerlicherweise auf Grund der inzwischen massiven Datenmenge (> 1 Mio Datensätze) ziemlich Ressourcenfressend eine Live-Analyse (im Grafana) durchzuführen und das Laden der Daten dauert inzwischen auch etwas länger. Da ich aber auf keinem Fall Daten löschen möchte und auch das Mining nicht beenden möchte, musste ich nun eine Lösung bzw. eine Möglichkeit zur Verbesserung finden.
Elastic Stack
Um die Daten besser und ressourcensparender abfragen zu können habe ich begonnen eine Migration mittels Logstash einzurichten, diese funktionierte für die kleinen Tabellen auch verhältnismäßig gut. Diese Daten kann ich nun einerseits direkt im Kibana darstellen oder wie zuvor im Grafana.
Natürlich dauert auch bei Elastic die Anfragen einen kleinen Augenblick wenn tausende Datensätze ausgegeben werden, allerdings ist diese trotzdem erheblich schneller als zuvor.
Migrationsprobleme
Wie bereits erwähnt hat die Migration für die kleinen Tabellen ganz gut funktioniert, dies gilt leider nicht für die großen Tabellen, welche die Mehrheit der Datensätze enthalten. Bei diesen bekomme ich Migrationsfehler, welche ich bis heute nicht beheben konnte. Natürlich kann ich anhand der bereits migrierten Datensätze eine Analyse durchführen, diese sind aber nicht so genau wie zuvor.
Es besteht auch der Plan, die Daten in der Zukunft direkt im Elastic zu speichern und nicht den Umweg der Migration zu gehen, dies ist bisher aber noch nicht der Fall. Sobald ich eine Lösung für mein Problem gefunden habe, werde ich dies aber auf jeden Fall angehen. Dann kann ich hoffentlich performanter als bisher auf die Datensätze zugreifen und diese Analysieren.
Mehr Daten
Im Zuge der Änderung an der Datenspeicherung werde ich auch noch eine Änderung an der Datensammlung durchführen. Der Plan ist, zusätzlich zu den bisherigen Daten auch noch die Positionen (Koordinaten) der Bahnhöfe zu persistieren, um so auch eine Heatmap erzeugen zu können. Hierfür muss ich auch nur winzige Änderungen durchführen, da ich diese Daten schon erhalte nur nicht speichere. Sobald all diese Änderungen durchgeführt sind, werde ich noch einmal ausführlich über die Ergebnisse der Datensammlung berichten und eventuell auch einige bessere Grafiken bereitstellen können.