Gibt es ein Geschäft bewährte Cloud-Speicher / Key => Wert-Datenbank? (Open Source) [geschlossen]

StackOverflow https://stackoverflow.com/questions/639545

Frage

Ich habe mich für das Cloud Computing / Storage-Lösungen für eine lange Zeit (inspiriert von der Google Bigtable). Aber ich kann nicht einfach zu bedienende, geschäftsfertige Lösung finden.

Ich suche eine einfache, fehlertolerante, verteilte Schlüssel => Wert DB wie SimpleDB von Amazon.

Ich habe gesehen, Dinge wie:

  1. Das CouchDB-Projekt : Einfache und verteilte, fehlertolerante Datenbank. Aber es versteht nur JSON. Keine XML-Anschlüsse etc.
  2. Eucalyptus : Nice Amazon EC2-Schnittstellen. Offene Standards und XML. Aber weniger verteilt und weniger fehlertolerant? Darüber hinaus gibt es viele offene Tickets mit XEN / VMWare Fragen.
  3. Clouds / Kosmosfs : Nice verteilt, fehlertolerante fs. Aber es ist schwer zu konfigurieren. Gibt es Java-Anschlüsse?
  4. Apache Hadoop : Nice System, das viel mehr als Fähigkeiten Daten zu speichern. Verfügt über eigenen Hadoop Distributed File System und wurde getestet auf Cluster mit 2000 Knoten.
  5. * Amazon SimpleDB : Kann nicht eine Open-Source-Alternative finden! Es ist ein schönes, aber teures System für große Datenmengen. Und du bist süchtig nach Amazon.

Gibt es andere, bessere Lösungen gibt? Welches ist die beste zu wählen? Welche bietet die kleinste Menge an SOF (Singe Point of Failure)?

War es hilfreich?

Lösung

MongoDB ist eine weitere Option, die CouchDB sehr ähnlich ist, aber Abfragesprache sehr ähnlich anstelle von Karte SQL / reduzieren in JavaScript. Es unterstützt auch Indizes, query Profilieren, Replikation und Speicherung von binären Daten.

Es hat riesige Menge an Dokumentation, die auf der Faust überwältigend sein könnten, so würde ich vorschlagen, mit Entwicklers Tour

Andere Tipps

Wie wäre es Memcached ?

Die Hohe Skalierbarkeit Blog deckt dieses Problem; wenn es eine Open-Source-Lösung ist für das, was Sie nach, es wird sicherlich da sein.

Weitere Projekte sind:

Eine weitere gute Liste: Anti-RDBMS: Eine Liste von verteilten Schlüsselwert speichert

Wikipedia sagt, dass Yahoo beide trägt zu Hadoop und verwendet sie in der Produktion ( Artikel aus wikipedia verlinkt). Also würde ich sagen, es zählt für Business-provenness, obwohl ich nicht sicher bin, ob es gilt als K / V-Wert-Datenbank.

Nicht auf der Liste ist das Friendfeed-System der Verwendung von MySQL als einfachem Schema -weniger Schlüssel / Wert-Speicher .

Es ist schwer für mich, Ihre Prioritäten zu verstehen. CouchDB ist einfach, fehlertolerante und verteilt, aber irgendwie Sie es ausschließen, weil es nicht XML hat. Sind XML und Java Connectors eine unausgesprochene Forderung?

(Auf jeden Fall sollten CouchDB in der Tat ausgeschlossen werden, weil sie jung ist, seine API nicht stabil ist, und es ist nicht ein Schlüssel-Wert-Speicher).

Ich verwende Google Google Base api, es ist Xml, frei, dokumentiert, Cloud-basierte und verfügt über Anschlüsse für viele Sprachen. Ich denke, es wird Ihre Rechnung füllen, wenn Sie zu kostenlosem Hosting wollen.

Nun, wenn Sie Ihre eigenen Server Tokyo hosten möchten Kabinett ist Ihre Antwort, dessen Schlüssel => Wert basiert, verwendet flache Dateien und ist die schnellste Datenbank heraus dort im Augenblick (sehr Barebones im Vergleich Oracle zu sagen, aber unglaublich gut darin zu speichern und Daten, etwa 1 Million Datensätze pro Sekunde mit etwa 10bytes von Overhead-Zugriff ( in Abhängigkeit von dem Speichermodul)). Wie für Unternehmen bereit TokyoCabinet ist das Herz eines Dienstes namens Mixi, die das Äquivalent von Japans Facebook + MyPage ist mit mehreren Millionen schwere Benutzer, so dass es bewiesen tatsächlich sehr Schlacht ist.

Wenn Sie so etwas wie Bigtable möchten, können Sie gehen nicht vorbei HBase oder Hyper - sie sind beide Open-Source-Bigtable Klone. Eine Sache zu prüfen, ist aber, wenn Ihre Anforderungen wirklich sind ‚groß genug‘ für Bigtable. Er skaliert auf Tausende von Tablet-Servern, und als solche hat einiges an Infrastruktur darunter, dass zu ermöglichen (zB Umgang mit der Erwartung von regulären Knotenausfälle).

Wenn Sie antizipieren nicht wachsen, zumindest Zehn Tablet-Server, möchten Sie vielleicht eine der vorgeschlagenen Alternativen zu prüfen: Sie können nicht schlagen BerkelyDB der Einfachheit halber oder MySQL für Allgegenwart. Wenn alles, was Sie brauchen, ist ein Schlüssel / Wert-Datenspeicher ist, können Sie einen einfachen ‚dict‘ Wrapper um Ihre Datenbank-Schnittstelle setzen, und wechseln Sie Ihr Back-End, wenn Sie eine entwachsen.

Sie können unter Hyper aussehen wollen, die nach Googles BigTable modelliert wird.

Mit der CouchDB

  • Was ist falsch mit JSON?
  • JSON zu XML ist trivial

Sie können einen Blick auf diese (unter Verwendung von MySQL als Schlüssel-Wert-Speicher) nehmen wollen:

http://bret.appspot.com/entry/how-friendfeed -Verwendet-mysql

Cloudera ein Unternehmen, das Apache Hadoop, mit einem Wert-add natürlich kommerzialisiert, wie productization, Konfiguration, Schulung und Support.

Stattdessen etwas von der Suche inspiriert von Google bigtable- Warum nicht einfach BigTable direkt benutzen? Sie könnten ein Front-End auf Google App-Motor schreiben.

Gute Zusammenstellung von Speichern Tool für Ihre Frage:

http: // www.metabrew.com/article/anti-rdbms-a-list-of-distributed-key-value-stores/

Tokyo Cabinet auch einige Aufmerksamkeit erhalten hat, wie es Tabellenschemata, Schlüsselwertepaare und Hash-Tabellen unterstützt. Es verwendet Lua als scripting-Plattform eingebettet und verwendet HTTP wie es ist Kommunikationsprotokoll Hier ist ein große Demonstration .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top