0

Gratuit et stable est le gagnant.La base de données SQL en mémoire prend-elle en charge la réplication/la mise en cluster?

Mon plan est assez trivial - il suffit de mettre toutes les données en mémoire et d'utiliser le cluster sans changer le code de l'application. Ensuite, pour la persistance, je pourrais juste vider les données des noeuds dans une base de données d'accès au disque régulière. La seule chose est que, puisque je demande un stockage en mémoire, il n'y a aucune possibilité de réplication complète des données. Je souhaite copier uniquement le schéma de base de données et que la base de données en mémoire gère toutes les jointures de manière cohérente pour moi.

merci d'avance!

MISE À JOUR: que j'ai trouvé un produit open source susceptible de répondre à mes besoins, il est VoltDB

Répondre

1

Sur intérêt, une raison particulière pour laquelle vous « demande » de stockage en mémoire et ne peut pas simplement utiliser un serveur db normal?

+0

Une telle raison pourrait être que je compte un déploiement intranet (sans décent centre de données), mais ce n'est pas le cas. En fait, je sais qu'il y a de jolies choses comme 'apache CouchDB' qui fonctionnent très vite; donc est-ce la direction que vous me pointeriez? – Bubba88

+0

Je vous suggère de repenser et d'aller avec un serveur db standard, sauf si vous avez des exigences particulières qui signifient que vous avez besoin d'un db en mémoire. De votre question, il semble que vous cherchez une solution à un problème (par exemple, la performance) et en supposant que la mémoire en mémoire est cette solution, sans décrire le problème. Il y a de bons dbs en mémoire, mais à moins que vous n'en ayez vraiment besoin, vous êtes probablement mieux avec une solution plus standard. – Rory

+0

Compris. Eh bien, je vous remercie pour le conseil :) – Bubba88

0

Que diriez-vous de temps d'Oracle dix http://www.oracle.com/technetwork/database/timesten/overview/index.html Ou peut-être DB berkeley

+0

Merci, je vais vérifier Berkeley DB – Bubba88

+0

Berkeley DB est «valeur-clé» :) J'ai cherché une base de données relationnelle avec l'interface SQL – Bubba88

+0

vous pouvez regarder cela - http: // yoshinorimatsunobu .blogspot.com/2010/10/en utilisant-mysql-as-nosql-story-for.html pour des idées. – Joe

0

Votre question est claire pour moi. Vous pouvez jeter un oeil à Timesten (maintenant détenue par ORACLE), il est basé sur SHMDB et fournit une interface SQL.

Le cluster MySQL est également une sorte de base de données en mémoire, car lorsque vous validez, cela signifie que les données sont en mémoire de deux nœuds et non écrites sur le disque. Mais bien sûr, le cluster MySQL écrira toutes les données sur le disque de façon asynchrone pour pouvoir sauvegarder et récupérer des données après un crash.

+0

Merci pour 'Timesten', mais je ne peux pas trouver si c'est disponible gratuitement :) – Bubba88

1

H2 La base de données prend également en charge un certain type de clustering.

0

Ce produit pourrait également faire le travail en tant que groupe en mémoire: http://terracotta.org

Il est également livré petit morceau d'un adaptateur pour java Quartz Scheduler, si vous voulez gérer certains emplois à.

0
  • MEMSQL, son fil compatible (ou en remplacement baisse) avec MySQL. H2 est également un bon candidat pour cette compétition. Voir here avec
    comparaisons avec d'autres bases de données

Questions connexes