Je recherche une base de donnée SQL sans persistence.
Je m'explique, j'aimerais pouvoir enregistrer des valeurs et que ca les enregistre en mémoire et non sous forme de fichier pour la persistence.
Je viens de regarder ta solution mais je pense que ca va poser probleme avec mon appli car j'ai un pool de connection...
From MySQL 3.23 on, you can use the TEMPORARY keyword when creating a table. A TEMPORARY table is visible only to the current connection, and is dropped automatically when the connection is closed. This means that two different connections can use the same temporary table name without conflicting with each other or with an existing non-TEMPORARY table of the same name. (The existing table is hidden until the temporary table is dropped.) From MySQL 4.0.2 on, you must have the CREATE TEMPORARY TABLES privilege to be able to create temporary tables.
D'aprés leur site, ils disent qu'il peut être "in-memory"
HSQLDB is the leading SQL relational database engine written in Java. It has a JDBC driver and supports a rich subset of ANSI-92 SQL (BNF tree format) plus SQL 99 and 2003 enhancements. It offers a small (less than 100k in one version), fast database engine which offers both in-memory and disk-based tables. Embedded and server modes are available. Additionally, it includes tools such as a minimal web server, in-memory query and management tools (can be run as applets) and a number of demonstration examples.
non, je ne l'ai utilisé que pour faire du développement (plus facile à installer qu'un postgresql ou mysql, et ca marche partout du moment qu'on a une jvm) et des versions de démos facilement installables d'applications web. Donc je ne peux pas juger des questions de performances, mais si tu veux j'ai trouvé cet article http://www.hibernate.org/157.html(...) qui parle d'un test de performances entre Hibernate et un autre produit (JDX). Ils ont testé sur différentes base de données, en ne gardant que les données pour JDX - car ils semblent toujours utiliser les même paramètres :
- hsqldb : 12s
- oracle : 146s
- mysql : 38s
Apparement pour oracle, il devait y avoir un pbm, un rapport 3 à 4 avec mysql me surprend quand même. Mais bon, ca semble être des résultats flateurs pour hsqldb, non? Donc si tu essayes hsqldb, dis nous ce que tu en penses dans ton cas d'emplois, ca pourrait servir à d'autres.
salut !
Non c'est normal pour Oracle. En fait, il resiste mieux à la charge par rapport aux autres serveurs, mais par contre, il est plus lent dans les transactions.
Je salue au passage la bonne perf de hsqldb !
# Commentaire supprimé
Posté par Anonyme . Évalué à 4.
Ce commentaire a été supprimé par l’équipe de modération.
[^] # Re: Table temporaire
Posté par superbamboo . Évalué à 1.
[^] # Re: Table temporaire
Posté par Christophe GRAND (site web personnel) . Évalué à 1.
La seule chose qui est écrite sur le disque c'est la définition de tes tables, pas le contenu.
http://dev.mysql.com/doc/mysql/en/HEAP.html(...)
# hsqldb
Posté par B r u n o (site web personnel) . Évalué à 2.
http://hsqldb.sourceforge.net/(...)
Mais je n'ai jamais testé en "in-memory", si t'essayes, tu me diras si ca marche bien :)
[^] # Re: hsqldb
Posté par superbamboo . Évalué à 1.
[^] # Re: hsqldb
Posté par B r u n o (site web personnel) . Évalué à 1.
- hsqldb : 12s
- oracle : 146s
- mysql : 38s
Apparement pour oracle, il devait y avoir un pbm, un rapport 3 à 4 avec mysql me surprend quand même. Mais bon, ca semble être des résultats flateurs pour hsqldb, non? Donc si tu essayes hsqldb, dis nous ce que tu en penses dans ton cas d'emplois, ca pourrait servir à d'autres.
[^] # Re: hsqldb
Posté par superbamboo . Évalué à 1.
Non c'est normal pour Oracle. En fait, il resiste mieux à la charge par rapport aux autres serveurs, mais par contre, il est plus lent dans les transactions.
Je salue au passage la bonne perf de hsqldb !
# disque en mémoire + sqlite
Posté par mmMMOoooOMMmm . Évalué à 1.
tmpfs /mnt/bdd tmpfs defaults,size=64m 0 0
(http://www.supinfo-projects.com/en/2004/optimis_linux/2/(...))
Avec une base SQLite (http://www.sqlite.org/(...)) dedans ?
# SQLite en :memory:
Posté par saorge . Évalué à 1.
Petite recherche sur base d'un souvenir et un article trouvé et jugé intéressant : http://www.filipdewaard.com/21_SQLite_inmemory_databases.html(...)
Donc, voilà, c'est possible, sqlite le fait !
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.