Ich arbeite an einem Projekt, das viele Informationen über Zuschauer von einer Online-Streaming-Plattform protokolliert. Das Problem heute mit der MySQL-Lösung ist, dass Abfragen zu langsam ist, und so. Selbst mit Skalierung und besserer Leistungsoptimierung funktioniert das jetzt, weil es zu viele Daten in Echtzeit gibt, die schreiben / lesen.
Was wird eine gute (die beste) NoSQL-Lösung für mich sein?
Extra:
Die erste Herausforderung, die Sie haben können, ist, wie Sie große Datenmengen zuverlässig und einfach verwalten können. Es gibt einige Open-Source-Log-Collector-Implementierungen wie Syslog, Fluentd , Schreiber und Flume :)
Das große Problem ist, wie man Daten speichert und verarbeitet. Wie Sie bereits erwähnt haben, funktioniert die Verwendung der NoSQL-Lösung sehr gut, aber Sie müssen je nach Datenvolumen zwischen ihnen wählen.
Zunächst können Sie MongoDB verwenden, um alle Ihre Daten zu speichern, aber in einem bestimmten Moment verwenden Sie Apache Hadoop um eine massiv skalierbare Architektur zu erstellen.
Hier sollten Sie eine verteilte Protokollschicht haben, die das Speicher-Back-End abstrahiert und die richtige NoSQL-Lösung für das Datenvolumen auswählt.
Hier sind einige Links, um die Apache Logs in MongoDB oder Hadoop HDFS von Fluentd zu platzieren.