1 votes

Existe-t-il des bases de données dont la durabilité repose sur la redondance et non sur le stockage permanent ?

Désolé que le titre ne soit pas vraiment évident, mais je ne pouvais pas mieux formuler.

Nous utilisons actuellement une base de données classique (oracle) comme file d'attente pour nos travaux, et ces "travaux" sont consommés par un certain nombre de nœuds (machines). Le serveur de base de données est donc sollicité par ces nœuds, et nous devons payer cher le logiciel et le matériel pour ce serveur de base de données.

L'autre jour, il m'est venu à l'esprit que..,

1) Il y a déjà plusieurs nœuds dans le système
2) Les "emplois" ne sont peut-être pas perdus à cause des défaillances des nœuds, mais il n'y a aucune raison pour qu'ils restent dans une salle d'attente. stockage secondaire (il n'y a pas de raison qu'ils ne soient pas conservés dans la mémoire, tant qu'ils ne sont pas perdus)

Dans ces conditions, ne pourrait-on pas conserver ces travaux en mémoire, en s'assurant qu'au moins n copies de ce travail sont présentes dans l'ensemble du cluster, ce qui permettrait de se débarrasser du serveur de base de données ?

De telles technologies sont-elles disponibles ?

1voto

cpurdy Points 563

Si vous n'envisagez de stocker que quelques téraoctets de données et que vous recherchez la redondance plutôt que la capacité de récupération des disques, jetez un coup d'œil à Oracle Coherence. En voici un exemple :

  • Elastique. Il suffit d'ajouter des nœuds. Découverte automatique. Équilibrage automatique de la charge. Pas de perte de données. Pas d'interruption. Chaque fois que vous ajoutez un nœud, vous bénéficiez d'une capacité de données et d'un débit accrus.
  • Utiliser à la fois la mémoire vive et la mémoire flash. En toute transparence. Gérer facilement des dizaines, voire des centaines de gigaoctets par nœud Coherence (par exemple, jusqu'à 1 To ou plus par serveur physique).
  • Haute disponibilité (HA) automatique. Abandon d'un processus, pas de perte de données. Tuer un serveur, sans perte de données.
  • Disponibilité continue du centre de données (CA). La mise à mort d'un centre de données n'entraîne aucune perte de données.

Par souci de transparence, je travaille chez Oracle. Les opinions et les points de vue exprimés dans ce billet sont les miens et ne reflètent pas nécessairement les opinions ou les points de vue de mon employeur.

1voto

Stephan Eggermont Points 11224

Avez-vous jeté un coup d'œil sur Gigaspaces ? À l'échelle de l'internet, il n'est pas nécessaire de persister. Il suffit de savoir qu'il y a suffisamment de copies. Si vous avez des connexions à faible latence vers des endroits qui ne sont pas sur le même réseau électrique (ou qui sont alimentés par des batteries), il suffit d'envoyer vos transactions aux copies.

0voto

amcknight Points 396

Tout dépend de ce que vous attendez de ces technologies. Il existe de nombreuses bases de données en mémoire (SQLite, Redis, etc.) et vous pouvez utiliser des techniques normales de réplication de base de données avec plusieurs esclaves dans plusieurs centres de données pour garantir la durabilité sans persistance.

Si vous stockez en mémoire, vous risquez de manquer d'espace et d'avoir besoin d'un partitionnement horizontal (sharding). VoltDB si vous voulez vous en tenir à SQL.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X