Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Administration
Administration Forum d'entraide sur les outils d'administration natifs pour Firebird: gbak, gfix, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/09/2007, 09h42   #1
Membre habitué
 
Homme Ludovic Lemaitre
Ingénieur développement logiciels
Inscription : mai 2006
Messages : 64
Détails du profil
Informations personnelles :
Nom : Homme Ludovic Lemaitre
Âge : 36
Localisation : France, Mayenne (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2006
Messages : 64
Points : 102
Points : 102
Par défaut Utilisation de "sweep interval" ; limitation du gonflement de la base

Bonjour,

J'ai comme qui dirait un problème de "surpoids" récurent avec les bases de données de mes clients.

J'ai vu sur certaines discussions que le backup/restore permettait de faire dégonfler certaines bases "mal gérées" (bon, à priori, c'est mon cas vu que je passe sur certaines bases de 500Mo à moins de 50Mo...) mais autant j'ai un backup automatisé (par GBakScheduler), autant le restore automatisé, là, je ne vois pas...

Je pensais passer par une modification du "sweep interval", mais là, le pb, c'est que je ne sais pas bien dans quelle mesure faire varier sa valeur... (et j'ai un peu peur de faire des conneries en y allant à l'aveuglette...)

Est-ce que quelqu'un pourrait me guider/renseigner ?

(j'ai oublié de préciser : je suis en Firebird 1.5.4 et en Delphi 5, avec impossibilité technique de changer de techno -je suis tout seul sur une appli déjà grosse à maintenir, et donc sans possibilité de tout basculer ne serait-ce qu'en Delphi 6-)
Pergos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/09/2007, 19h13   #2
Membre expérimenté
 
Inscription : mars 2002
Messages : 711
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 711
Points : 599
Points : 599
je pense que tu devrai revoir un peu tes transactions car moi j'utilise Delphi 6 et firebird 1.5 ou 2.0 et ça augmente un peu mais faiblement (ça peut prendre quelques mega au bout d'une année d'utilisation...)

pour le sweep, j'ai laissé la valeur par défaut (20000 je crois). C'est je crois le nombre de transactions entre chaque sweep

tu utilises quel paramètre pour tes transactions ?

elle gonfle de 50 Mo à 500 Mo rapidement ?

y a beaucoup de personnes connectés ?
VLDG est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/09/2007, 19h21   #3
Membre expérimenté
 
Inscription : mars 2002
Messages : 711
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 711
Points : 599
Points : 599
regarde ici http://www.ibphoenix.com/main.nfs?a=...ge=ibp_expert4
VLDG est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/09/2007, 07h56   #4
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 631
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 3 631
Points : 4 533
Points : 4 533
avec Firebird 2 je suis en train de tester la solution suivante

1) j'ai mis l'intervalle de Sweep à 0
gfix -user SYSDBA -password masterkey c:\labase.fdb -h 0

2) je fais régulièrement (tache plannifiée) un sweep pendant les heures hors bureau (1h du mat, 13h00)

gfix -user SYSDBA -password masterkey c:\labase.fdb -sweep

opérations indiquées sur le site de Firebird je crois

pourquoi : parce que l'opération auto de nettoyage occupe tout le processeur lorsqu'elle se déclenche (bug connu de FIB 2)
nota : j'ai des vieux programmes D3 qui accède a cette base anciennement 5.6

dans un précédent post http://www.developpez.net/forums/sho...d.php?t=399242Makowsky me proposait une autre solution que je n'ai pas encore testé . Laquelle est la meilleure ?
__________________
La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein
J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 09h58   #5
Membre habitué
 
Homme Ludovic Lemaitre
Ingénieur développement logiciels
Inscription : mai 2006
Messages : 64
Détails du profil
Informations personnelles :
Nom : Homme Ludovic Lemaitre
Âge : 36
Localisation : France, Mayenne (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2006
Messages : 64
Points : 102
Points : 102
(Désolé pour le retard...)

Citation:
Envoyé par VLDG
...je pense que tu devrai revoir un peu tes transactions ...
Oui, effectivement... d'autant plus qu'il y a quelques mois, je n'avais pas le problème : les bases prenaient quelques mégas par mois, mais moins d'une dixaine le plus souvent... C'est du à un bout de code pondu par quelqu'un qui est parti, et c'est du code que je ne maîtrise pas trop, avec des CommitRetaining et des RollbackRetaining... J'ai essayé en enlevant les "retaining", mais du coup, j'ai d'autres transactions qui ne suivent plus......

En gros, d'ici à trouver une solution "convenable", il faut que je trouve une solution temporaire pour mes clients installés...

Citation:
Envoyé par VLDG
elle gonfle de 50 Mo à 500 Mo rapidement ?
y a beaucoup de personnes connectés ?
Moi, en tests, je fait gonfler une base en une journée (de 50 Mo à 300 Mo voire plus...). Bon, fait dire que je fais des imports, je supprime tout, je réimporte,... pendant toute une journée, ça représente des milliers d'enregistrements insérés, et autant de delete forcément...
En utilisation normale, c'est souvent moins de 10 utilisateurs, avec au final le même volume d'insert et de delete (et donc le même gonflement), mais sur une semaine...

Citation:
Envoyé par SergioMaster
dans un précédent post Makowsky me proposait une autre solution
J'avais effectivement vu ce post, mais la migration IB->FIB ayant été réalisée bien avant mon arrivé sur ce poste, la solution ne me paraissait pas adaptée... Par contre, je suis bien placé pour comprendre ta remarque :
Citation:
beaucoup de programmes anciens doivent encore 'tourner'


Citation:
Envoyé par SergioMaster
je fais régulièrement (tache plannifiée) un sweep pendant les heures hors bureau
Je crois que je vais essayer de ce côté... Je ne suis pas passé en FIB 2, donc à priori, je devrais même pouvoir essayer un mixte, genre : seep interval entre 1000 et 5000 transactions + sweep en tache planifiée pendant les heures de nuits et/ou du midi...

(désolé encore : le post est très long)
Pergos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 11h48   #6
Membre habitué
 
Homme Ludovic Lemaitre
Ingénieur développement logiciels
Inscription : mai 2006
Messages : 64
Détails du profil
Informations personnelles :
Nom : Homme Ludovic Lemaitre
Âge : 36
Localisation : France, Mayenne (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2006
Messages : 64
Points : 102
Points : 102
Bon, je viens de faire des tests avec des Sweep Interval différents, sur deux copies d'une même base (30 Mo), et après une même série d'imports dans les deux cas, les mêmes appli ouvertes en visu sur la base pendant l'import, quasiment les même manips,... :
- Sweep Interval à 20000 : gonflement de 700 % ( faut vraiment que je trouve cette @!#!$£ de transaction déconnante !!!)
- Sweep Interval à 1000 : gonflement de 450 %
- Sweep Interval à 100 : gonflement de 400 % (avec un tassement considérable du gonflement en cas d'imports supplémentaires)

Je crois que je tiens ma solution temporaire... ... en attendant de trouver un moyen de corriger ce code !

Merci à tous !
Pergos est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h37.


 
 
 
 
Partenaires

Hébergement Web