Alternative à la base de données dans la mémoire TimesTen [fermée]
-
22-09-2019 - |
Question
J'ai trouvé juste « Quelqu'un at-il publié une comparaison détaillée entre les différents en mémoire SGBDR ? » qui est lié à ma question.
TimesTen (voir aussi ) est In-Memory Database d'Oracle.
Il a beaucoup de choses pour elle y compris.
- rapide, temps de réponse cohérente
- haut débit de transaction
- Standard SQL, pas de réécriture de l'application
- persistante et récupérable
- Haute disponibilité et sans perte de données
Cependant, il est au prix hors de la portée de la plupart des gens ( 41,500.00 $ / processeur ).
Quelles sont les alternatives, et ce sont là des avantages et des inconvénients.
(j'utilise .NET si elle change votre réponse)
La solution
Un système de base de données en mémoire populaire est eXtremeDB de McObject, voir
http://www.mcobject.com/extremedbfamily.shtml
Il y a aussi un bon livre blanc, offert pour téléchargement à partir de la page d'accueil du site Web de McObject, appelée « In-Memory Database Systems: Mythes et réalités ». Il clarifie certaines questions qui se posent lors de l'examen de la technologie, comme « comment est un IMDS différent d'une base de données « traditionnelle » en cours d'exécution sur un disque RAM? »
Autres conseils
En général, dans ce domaine les gens regardent aussi KDB de Kx Systems . Je pense que ces deux systèmes ont vraiment qu'ils foin jour au début des années 2000. Je verrais si MySQL accordée avec une matrice RAID à l'état solide vous donnera la performance dont vous avez besoin.
BTW, je l'ai écrit une fois une base de données de séries chronologiques qui a surperformé à la fois TimesTen et KDB. Il a appuyé une syntaxe SQL-92. La clé de la performance a été le schéma obligatoire aux classes basées sur des modèles de C, et l'utilisation des fichiers mémoire mappée. En tenant compte de la sur-terme des changements de schéma est assez cher, et la définition du schéma au moment de la compilation, recherches de données pourrait être récupéré en quelques instructions de montage.
Au-dessus de question a été posée (et répondu) retour en 2009. Cependant, la question est toujours d'actualité et nous pouvons donner un look 2ème.
Je peux suggérer des alternatives à la suite TimesTen:
- SQLite
- Lien: http://www.sqlite.org/inmemorydb.html
- Avantages: faible encombrement, il est SGBDR (pas Réécriture d'application nécessaire)
- Inconvénients: Pas de verrouillage de ligne
- H2
- Lien: http://www.h2database.com/html/features.html #in_memory_databases
- Avantages: Il est SGBDR (pas Réécriture d'application nécessaire), le verrouillage de ligne
- Redis
- Lien: http://redis.io
- Avantages: rapide avec le soutien Blazingly natif pour les structures de données telles que la liste, hachage, ensemble, triées etc réglé
- Inconvénients: Pas un SGBDR (vous pouvez réécrire votre application)
Tout ce qui précède peut exécuter en mémoire . Caractéristiques-sage vous pourriez trouver des choses manquantes par rapport à TimesTen. Mais ils sont certainement en valeur un regard.
Un autre pour la liste: open-source Tarantool est une option persistante en mémoire qui prend en charge comme TimesTen ACIDE transactions et SQL. Contrairement à TimesTen, cependant, il peut être auto-et fragmentées dispose également d'un serveur d'application Lua complète pour les procédures stockées.
Je l'ai récemment fait une comparaison betweem Oracle et Sybase ASE TimesTen IMDB.
L'article est en deux parties et à partir des liens suivants.
http: // searchoracle.techtarget.com/tip/In-memory-databases-Oracle-TimesTen-vs-Sybase-ASE-part-2
J'ai posé cette question un LONG il y a, ces jours Microsoft SQL Server ont "
Une alternative peut être solidDB, une comparaison entre les deux se trouve ici: TimesTen et la comparaison solidDB
Ajouter à la liste des bases de données In-Mem.
Apache Derby HyperSQL ou HSQLDB.
H2 et HyperSQL ont un mode de compatibilité et de soutenir le schéma d'autres bases de données, ce qui est une caractéristique très agréable.