Verwendetes Datenbanksystem: <Azure SQL>
Hallo zusammen,
meine Cloud App loggt aktuell User Daten, welche auch für den User relevant sind, in eine Azure SQL Table. Hier fallen pro Tag etliche 10k Einträge an. Für meine User sind diese Logs sehr wichtig und sie können diese in einer tabellarischen Ansicht auf der Website einsehen.
Von der Struktur sieht die Tabelle so aus:
ID UserId Timestamp Type Message Exchange
Die Anwendung zieht die Daten, gefiltert nach User, via Entity Framework sortiert von neu nach alt aus der DB. Es sind entsprechend auch Indexe gesetzt, nur leider verschlechtert sich der Index schon nach 1 - 2 Wochen immer wieder, da soviel neue Einträge stattfinden, was letztendlich zu Performance Problemen führt. Manchmal dauern einige Queries 1-5 Minuten.
Ich suche nun nach einem anderen performanteren Ansatz die User Daten zu loggen. Ich hatte an eine Document DB wie Cosmo gedacht. Könnt ihr mir mit den Mitteln die Azure bereitstellt eine gute Alternative raten? Denn ich möchte ja auch einigermaßen kosteneffizient bleiben. Aktuell hätte ich nur die Möglichkeit ne fettere DB bereitzustellen, was nicht gerade günstig ist.
|
|