|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Inscription : février 2004 Messages : 43 ![]() |
Bonjour,
je developpe un appli java avec une base de données firebird 1.5. J'ai une table de 300 000 lignes. J'utilise IBExpert. Lorsque j'effectue un tri sur cette table, ca me consomme 150Mo de Ram. Et le pire, c'est que la RAM n'est pas libérée à la fin! Quelqu'un a t il deja rencontre ce probleme? |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Frédéric Inscription : octobre 2002 Messages : 1 722 ![]() |
C'est que le tri que vous demandez n'est pas fait sur un index oubien c'est que vous faites un fetch de tous les enregistrements.
La mémoire consommée c'est parqu'il est bien plus rapide de mettre en cache les données plutot que de les lire toujours sur le disque dur. "Le pire" ca dépend pour qui. S'il liberait la mémoire après vous allez vous plaindre que le SGBD est trop lent. C'est la même histoire que "Pourquoi quand je delete des enregistrements la taille de ma base ne diminue pas ???" -> C'est pour priviliger la rapidité. Réorganiser un gros fichier juste pour boucher un "trou" ca coute trop cher en resource... Si vous lancez une deuxième foit le même tri sur vos 300000 enregistrement il sera quasiment instantanné alors que la première fois il a pris beaucoup de temps(s'il n'y avait pas d'index). Un SGBD est en général optimisé pour accélérer l'accés aux données. Hélas il n'y a pas 36 solutions pour le faire et on ne peux tout avoir (vitesse et consomation des resources minimale). Et donc en général on adapte le serveur aux besoins en mémoire de la base pour optenir de bonnes performances. Vos 150 Mo ne sont pas perdus, celà correspond à la mise en cache de votre table, cette mise en cache va profiter à tous les autres accés à cette table et donc celà va réduire considérablement les temps d'accés. |
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : février 2004 Messages : 43 ![]() |
merci barbibulle,
je comprends bien mieux maintenant. tes explications sont toujours un régal de claireté! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com