Gibt es eine SQL-Datenbank in der Memory, die Replikation/Clustering unterstützt?
-
25-09-2019 - |
Frage
Kostenlos und stabil ist der Gewinner.
Mein Plan ist ziemlich trivial - legen Sie einfach alle Daten in den Speicher und verwenden Sie den Cluster, ohne den Anwendungscode zu ändern. Für die Persistenz konnte ich dann die Daten von Knoten in einer regelmäßigen Datenbank mit Scheibenzugriff ablegen.
Das einzige ist, dass es keine Möglichkeit einer vollständigen Datenreplikation gibt, da ich eine Speicherung in der Memory verlangt. Ich möchte nur das DB-Schema kopieren und dass das In-Memory-DB alle Verknüpfungen für mich konsequent verwaltet.
Vielen Dank im Voraus!
Update: Ich habe ein Open-Source-Produkt gefunden, das meine Anforderungen wahrscheinlich erfüllt, es ist Voltdb
Lösung
Aus Interesse, ein besonderer Grund, warum Sie in Memory-Speicher "fordern" und nicht einfach einen normalen DB-Server verwenden können?
Andere Tipps
Die H2 -Datenbank unterstützt auch eine Art Clustering.
Wie wäre es mit Oracles Zeiten zehnhttp://www.oracle.com/technetwork/database/timesten/overview/index.htmlOder vielleicht Berkeley DB
Ihre Frage ist mir unklar. Sie können einen Blick darauf werfen TIMESTEN (Jetzt im Besitz von Oracle), basiert es auf SHMDB und bietet eine SQL -Schnittstelle.
MySQL-Cluster ist auch eine Art von In-Memory-DB, da Sie sich begehen. Dies bedeutet, dass Daten im Speicher von zwei Knoten und nicht auf der Festplatte geschrieben sind. Aber natürlich schreibt MySQL Cluster alle Daten asynchron, um nach einem Absturz Daten zu sichern und wiederherzustellen.
Dieses Produkt würde den Job auch als In-Memory-Cluster erledigen:http://terracotta.org
Es kommt auch zu einem Adapter an Java Quartz Scheduler, wenn Sie einige Jobs erledigen möchten.