2016-04-13 19 views
1

Welche Datenbank-Software kann diese?Welche Datenbank unterstützt Skalierbarkeit und Verfügbarkeit?

  • Skalierbarkeit über Datenpartitionierung, z. B. consistent hash.
  • Redundanz für Failover. Sowohl Speicher-Cache als auch Plattenspeicher zusammen. Schlüsselwert-Daten Wert ist Dokumenttyp wie JSON.
  • Bevorzugt A und P in CAP theory.

Ich habe gehört, dass MemcacheD kann all dies tun, aber ich bin mir nicht sicher.

Hier Details:

  • Datenspeichervolumen ist, < 30KB JSON-Dokument für jede Taste. Schlüssel müssen> 100.000.000 sein.
  • Daten werden für eine Sekunde> 10K-mal abgerufen.
  • Persistenz ist für jede Schlüsselwertdaten erforderlich.
  • Keine Transaktion erforderlich.
  • Entwicklungsumgebung ist C#, aber andere Sprachen sind in Ordnung, wenn die Protokollspezifikation bekannt ist.
  • Karte reduzieren wird nicht benötigt.
+0

Möglicherweise besser geeignet für http://softwarerecs.stackexchange.com/ –

+0

Vielen Dank. Ich möchte diese Frage dorthin bringen. Wie kann ich es tun? Löschen und dann kopieren? –

+0

Ja, das sollte funktionieren. –

Antwort

1

Dies ist zu kurz eine Spezifikation Beschreibung, um eine Datenbank zu wählen. Es gibt noch eine Menge anderer Einschränkungen (Datenspeichervolumen, Datentransfervolumen, Persistenzanforderung, Transaktionsbedarf, Entwicklungsumgebung, Kartenreduzierung usw.).

Dass gesagt wird:

  • Memcached oder RedisMemory-Datenbank sind, was bedeutet, dass Sie nicht mehr als das, was den Arbeitsspeicher Ihres Computers speichern kann, halten kann. Dies ist jetzt weniger der Fall, da verteilte Fähigkeiten zu redis hinzugefügt wurden.

  • Dokumentendatenbank (wie MongoDB oder Microsoft Document Db) unterstützt alles. Und Sie können memcached oder redis in Front hinzufügen. So benutzen die meisten Leute sie.

  • Ich möchte hinzufügen, dass jede SQL jetzt mit JSON umgehen kann. Das klappt also auch. Bei Bedarf mit einem Cache vorne.

Einige link of interest für JSON orientierte Datenbank. Aber noch einmal. Das ist zu kurz, um eine Datenbank auszuwählen.

+0

Es tut mir leid. Datenspeichervolumen ist <30 KB JSON-Dokument für jeden Schlüssel. Schlüssel müssen> 100.000.000 sein. Auf die Daten wird für eine Sekunde> 10K-mal zugegriffen. Persistenz ist für jede Schlüsselwertdaten erforderlich. Keine Notwendigkeit für eine Transaktion. Entwicklungsumgebung ist C#, aber andere Sprachen sind in Ordnung, wenn die Protokollspezifikation bekannt ist. Map Reduce wird nicht benötigt. –