Hochleistungs-DB für schnelles Lesen und schnelles Schreiben. Kein Update oder Löschen [geschlossen]

8

Ich suche nach der Datenbank / dem Mechanismus zum Speichern der Daten, wo ich die Daten schreiben und die Daten mit hoher Leistung lesen kann.

Dieser Speicher wird verwendet, um die Protokollierung wie wichtige Informationen über mehrere Systeme hinweg zu speichern. Since it's critical data which will be logged, read performance should be pretty fast as these data will be used to show history. Since we never do update on them/delete on them/or do any kinda joins, I am looking for right solution. Wahrscheinlich archivieren wir die Daten sehr lange, aber das ist in Ordnung.

Ich habe versucht, verschiedene Quellen zu betrachten, um verschiedene NoSql-Datenbanken zu verstehen, Expertenmeinung ist immer besser:)

%Vor%

Bezogen: Ссылка

    
Reddy 12.11.2014, 10:58
quelle

3 Antworten

15

Achten Sie darauf Aerospike ; Aerospike dominiert im Adtech-Bereich, wo hoher Durchsatz Lese- und Schreibvorgänge erforderlich sind. Aerospike wird häufig als "die Geschwindigkeit von Redis mit der Skalierbarkeit von Cassandra" angepriesen. Informationen zum Suchen / Abfragen finden Sie in der Aerospike-Dokumentation Sekundärindex .

Weitere Informationen finden Sie in der folgenden Diskussion / Artikeln:

    Aerospike vs Cassandra
  1. Aerospike vs Redis und Mongo
  2. Aerospike-Benchmarks

Überprüfen Sie die Leistung schließlich selbst mit der 1 Million TPS in den EC2-Anweisungen .

>     
kporter 13.11.2014 16:21
quelle
6

Lass mich der Cassandra Sponsor sein.

Haftungsausschluss : Ich sage nicht, dass Cassandra besser ist als die anderen, weil ich nicht einmal so viel Ahnung von Mongo / Redis / was weiß, und ich möchte nicht einmal in solche Sachen kommen .

Der Grund, warum ich Cassandra vorschlage, ist, weil Ihre Bedürfnisse genau mit dem, was Cassandra anbietet, übereinstimmen und Ihre "nicht benötigte Liste" eine Reihe von Funktionen ist, die in Cassandra nicht unterstützt werden (Joins für Instanzen) oder ein Anti-Pattern (löscht und in einigen Situationen Updates).

Von Ihrer "Muss" -Liste, Punkt für Punkt

  1. Schnelles Lesen ohne Fehler : Unterstützt. Sie können die Konsistenzstufe jeder Leseoperation wählen, die entscheidet, wie wichtig es ist, die frischesten Informationen abzurufen und wie wichtig die Geschwindigkeit ist

  2. Schnelles Schreiben ohne Fehler : Wie Punkt 1

  3. Zufälliger Zugriff Leistung : Wenn Sie in der Cassandra-Welt sind, müssen Sie viele Parameter berücksichtigen, um eine zufällige Zugriffsleistung zu erhalten, aber die wichtigste, die in meine kommt mind ist das Datenmodell - wenn Sie ein horizontal skalierbares Datenmodell erstellen ( werfen Sie einen Blick hier ) und Sie vermeiden Hotspots Sie bekommen, was Sie brauchen. Wenn Sie Ihre DB auf eine gute Weise modellieren, sollten Sie O (1) für jede Operation haben, da die Daten strukturiert sind, um abgefragt zu werden

  4. Replikation : In diesem Fall ist Cassandra sogar besser als das, was Sie vielleicht denken. Wenn ein Knoten ausfällt, ändert sich nichts am Cluster und alles (*) funktioniert einwandfrei. Cassandra sieht keinen einzigen Fehlerpunkt. Ich kann Ihnen mit der älteren Cassandra-Version sagen, dass ich eine Betriebszeit von mehr als 3 Jahren hatte

  5. Gleichzeitiges Schreiben / Lesen von Daten : Cassandra verwendet die lww-Richtlinie (last-write-wins), um gleichzeitige Schreibvorgänge auf demselben Schlüssel zu verarbeiten. Das System unterstützt mehrere Lese- / Schreibvorgänge und bei neueren Protokollen auch asynchrone Operationen.

Es gibt viele andere interessante Funktionen, die Cassandra anbietet: Die lineare horizontale Skalierung ist die, die ich mehr schätze, aber es gibt auch die Tatsache, dass Sie den Moment wissen können, in dem alle Daten aktualisiert wurden (der Zeitstempel von lww). Leistungsmerkmale und so weiter.

(*) - wenn Sie nicht die Konsistenzstufe Alle verwenden, die imho, sollte NIEMALS in einem solchen System verwendet werden.

    
Carlo Bertuccini 12.11.2014 18:38
quelle
4
___ answer26913554 ___

Achten Sie darauf Aerospike ; Aerospike dominiert im Adtech-Bereich, wo hoher Durchsatz Lese- und Schreibvorgänge erforderlich sind. Aerospike wird häufig als "die Geschwindigkeit von Redis mit der Skalierbarkeit von Cassandra" angepriesen. Informationen zum Suchen / Abfragen finden Sie in der Aerospike-Dokumentation Sekundärindex .

Weitere Informationen finden Sie in der folgenden Diskussion / Artikeln:

    Aerospike vs Cassandra
  1. Aerospike vs Redis und Mongo
  2. Aerospike-Benchmarks

Überprüfen Sie die Leistung schließlich selbst mit der 1 Million TPS in den EC2-Anweisungen .

>     
___ tag123performance ___ Für Fragen zur Messung oder Verbesserung der Code- und Anwendungseffizienz. ___ tag123aerospike ___ Aerospike ist eine Open-Source-Datenbank mit verteilten NoSQL-Datenbanken und einem Schlüssel-Wert-Speicher, um die Skalierbarkeit von Standardhardware zu optimieren. Aerospike wird häufig als Schlüsselwertspeicher, Cache-Ersatz, Benutzerprofilspeicher, Empfehlungsmodul und Betrugserkennung verwendet. ___ tag123database ___ Eine Datenbank ist eine organisierte Sammlung von Daten. Es ist die Sammlung von Schemas, Tabellen, Abfragen, Berichten, Ansichten und anderen Objekten. Die Daten sind typischerweise so organisiert, dass sie Aspekte der Realität so modellieren, dass sie Prozesse unterstützen, die Informationen benötigen. Verwenden Sie dieses Tag, wenn Sie Fragen zum Entwerfen einer Datenbank haben. Wenn es sich um ein bestimmtes Datenbankverwaltungssystem (z. B. MySQL) handelt, verwenden Sie stattdessen dieses Tag. ___ tag123nosql ___ NoSQL (manchmal erweitert auf "nicht nur SQL") ist eine breite Klasse von Datenbankverwaltungssystemen, die sich in einigen wesentlichen Punkten vom klassischen Modell des relationalen Datenbankverwaltungssystems (RDBMS) unterscheidet. ___ qstnhdr ___ Hochleistungs-DB für schnelles Lesen und schnelles Schreiben. Kein Update oder Löschen [geschlossen] ___ qstntxt ___

Ich suche nach der Datenbank / dem Mechanismus zum Speichern der Daten, wo ich die Daten schreiben und die Daten mit hoher Leistung lesen kann.

Dieser Speicher wird verwendet, um die Protokollierung wie wichtige Informationen über mehrere Systeme hinweg zu speichern. %code% Wahrscheinlich archivieren wir die Daten sehr lange, aber das ist in Ordnung.

Ich habe versucht, verschiedene Quellen zu betrachten, um verschiedene NoSql-Datenbanken zu verstehen, Expertenmeinung ist immer besser:)

%Vor%

Bezogen: Ссылка

    
___ answer26894125 ___

Lass mich der Cassandra Sponsor sein.

Haftungsausschluss : Ich sage nicht, dass Cassandra besser ist als die anderen, weil ich nicht einmal so viel Ahnung von Mongo / Redis / was weiß, und ich möchte nicht einmal in solche Sachen kommen .

Der Grund, warum ich Cassandra vorschlage, ist, weil Ihre Bedürfnisse genau mit dem, was Cassandra anbietet, übereinstimmen und Ihre "nicht benötigte Liste" eine Reihe von Funktionen ist, die in Cassandra nicht unterstützt werden (Joins für Instanzen) oder ein Anti-Pattern (löscht und in einigen Situationen Updates).

Von Ihrer "Muss" -Liste, Punkt für Punkt

  1. Schnelles Lesen ohne Fehler : Unterstützt. Sie können die Konsistenzstufe jeder Leseoperation wählen, die entscheidet, wie wichtig es ist, die frischesten Informationen abzurufen und wie wichtig die Geschwindigkeit ist

  2. Schnelles Schreiben ohne Fehler : Wie Punkt 1

  3. Zufälliger Zugriff Leistung : Wenn Sie in der Cassandra-Welt sind, müssen Sie viele Parameter berücksichtigen, um eine zufällige Zugriffsleistung zu erhalten, aber die wichtigste, die in meine kommt mind ist das Datenmodell - wenn Sie ein horizontal skalierbares Datenmodell erstellen ( werfen Sie einen Blick hier ) und Sie vermeiden Hotspots Sie bekommen, was Sie brauchen. Wenn Sie Ihre DB auf eine gute Weise modellieren, sollten Sie O (1) für jede Operation haben, da die Daten strukturiert sind, um abgefragt zu werden

  4. Replikation : In diesem Fall ist Cassandra sogar besser als das, was Sie vielleicht denken. Wenn ein Knoten ausfällt, ändert sich nichts am Cluster und alles (*) funktioniert einwandfrei. Cassandra sieht keinen einzigen Fehlerpunkt. Ich kann Ihnen mit der älteren Cassandra-Version sagen, dass ich eine Betriebszeit von mehr als 3 Jahren hatte

  5. Gleichzeitiges Schreiben / Lesen von Daten : Cassandra verwendet die lww-Richtlinie (last-write-wins), um gleichzeitige Schreibvorgänge auf demselben Schlüssel zu verarbeiten. Das System unterstützt mehrere Lese- / Schreibvorgänge und bei neueren Protokollen auch asynchrone Operationen.

Es gibt viele andere interessante Funktionen, die Cassandra anbietet: Die lineare horizontale Skalierung ist die, die ich mehr schätze, aber es gibt auch die Tatsache, dass Sie den Moment wissen können, in dem alle Daten aktualisiert wurden (der Zeitstempel von lww). Leistungsmerkmale und so weiter.

(*) - wenn Sie nicht die Konsistenzstufe Alle verwenden, die imho, sollte NIEMALS in einem solchen System verwendet werden.

    
___
Peter Corless 18.11.2014 17:32
quelle