Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Débuter
Débuter Forum d'entraide pour débuter avec Firebird
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 05/08/2004, 16h04   #1
Candidat au titre de Membre du Club
 
Inscription : novembre 2002
Messages : 25
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 25
Points : 12
Points : 12
Par défaut Que signifie Pagesize ?


Bonjour à tous,

Vous allez très certainement trouvé ma question idiote - mais tant pis, je me lance : Sous interbase 7.1, que signifie le "pagesize" ?
Est ce que ce PageSize définit une taille maxi pour ma base de données ?

J'ai recherché en tapant Pagesize, mais en vain...
merci d'avance...
anthony70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2004, 16h39   #2
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
C'est la taille de la page ..

Ca n'a aucun rapport avec la taille maximum de la base de données.

Si je ne me trompe pas c'est la taille du bloque mémoire minimum alloué (lu sur le disque) lors d'un select par exemple. Donc soit le résultat de ce select va tenir dans cette page (il peut y avoir plusieurs enregistrements dans une page) soit il necessitera plusieures pages.

Donc changer ce paramétre ne change rien sur les caractéristiques de capacité maxi de la base mais va jouer sur l'optimisation des accés à celle ci.

Plus le page size est grand, plus il va contenir des données mais plus il va consommer de l'espace mémoire peu être pour rien...

Et au contraire plus le page size est petit moins il va contenir de données (et donc moins de mémoire ne sera gachée) mais plus les accés disques et allocations de mémoire seront frequentes ce qui risque de faire baisser les performances.

Voilà ce que j'en ai compris mais je peux me tromper car je n'ai pas expérimenté en réel la modification de ce paramètre...

Sur d'autre SGBD qui utilisent la technique du bloquage des enregistrements (et non le versionning comme Interbase), c'est en faite toute les données de la page en cours qui est lockée et non l'enregistrement modifiée. Et donc ce paramétre prend une toute autre importance, car définir une page trop grande risque de bloquer trop d'enregistrement et donc de monde...

Voilà, si quelqu'un peut confirmer ou contredire mes dires (en argumentant ou completant) ca serait bien.
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/08/2004, 17h25   #3
Membre émérite
 
Avatar de Andry
 
Inscription : juillet 2002
Messages : 1 109
Détails du profil
Informations personnelles :
Localisation : Madagascar

Informations forums :
Inscription : juillet 2002
Messages : 1 109
Points : 949
Points : 949
Envoyer un message via MSN à Andry
J'ai eu cette information sur le site de SQLPro http://sql.developpez.com/optimiser/
Citation:
Lors de la création d'une base il est possible de demander la création d'un fichier doté d'une taille précise. Il convient de toujours créer le fichier de la base de données avec la taille qu'aura la base de données au cours de son exploitation. Ainsi si votre base de données doit faire à terme 3 Go, lors de la création de la base, donnez cette valeur comme taille du fichier. Les dispositifs d'auto adaptation de la taille de la base font généralement perdre du temps par le fait qu'ils fragmentent le fichier constituant la base.


Placez le fichier des données de la base sur un disque à part en évitant le disque système. Placez le fichier du journal sur un disque à part en évitant le disque système et celui contenant les données de la base.
Ceci retarde la saturation des disques et fait gagner du temps du fait de la parrallélisation des tâches d'écriture du système SCSI sur deux disque physiques différents.


Si vous le pouvez, répartissez les données de votre base sur plusieurs disques par exemple en plaçant les données les plus lourdes (BLOB) sur les disques les moins performants.


Choisissez bien la taille de la page de données (c'est la granule de base pour le stockage des données de votre SGBDR). Cela se calcule en fonction de la taille de la base adulte, de la taille des disques et de la taille de la RAM...
On peut donner à titre indicatif l'échelle suivante (mieux vaut consulter la documentation de votre SGBDR) : si la taille préconisée par votre SGBDR est 8 Ko pour une base de quelques Go avec 1 Go de RAM sur des disques de 9 Go avec un OS 32 bits... alors :

RAM 256 Mo 512 Mo 1 Go 2 Go 4 Go
Disque 4 Go 4 Go 9 Go 18 Go 36 Go
Base 600 Mo 1 Go 3 Go 8 Go 25 Go
Page 2 Ko 4 Ko 8 Ko 16 Ko 32 Ko

Réglez les paramètres des structures de stockage en fonction de la place disque et du pourcentage de mise à jour.
Par exemple, les structures d'arbres pour stocker les index utilisent le plus souvent un paramètre, le "fill factor" (facteur de remplissage) qui peut être ajusté. La plupart du temps ce "fill factor" est de l'ordre de 92 à 98 %. Plus il est faible, plus l'accès à l'index sera rapide, mais plus le volume de données occupé par cet index sera important et donc couteux en terme de mise à jour. A vous de décider si vous voulez optimiser les lectures ou les écritures sur la base de données.


CE QUI FAIT GAGNER DU TEMPS...



Créez la base de données avec une taille de fichier calculé sur le volume à l'age adulte de la base
Répartissez les fichiers de données et du journal sur des disques différents, en évitant le disque système
Répartissez les données sur plusieurs disque, notamment les BLOBS sur les disques les moins rapide
Précisez une taille de page de données adaptée à la structure physique du système et au volume des données
Réglez les paramètres des structures de stockage des index
Bonne lecture

A+
__________________
On progresse .....
Andry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2004, 13h31   #4
Candidat au titre de Membre du Club
 
Inscription : novembre 2002
Messages : 25
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 25
Points : 12
Points : 12
Si j'ai bien compris, pour une base de 3Go, je dois définir la PageSize à 8Ko,
c'est bien cela ?

Merci à tous, si j'obtiens des infos complémentaires, ne ne manquerai pas de les poster ici.
anthony70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h41.


 
 
 
 
Partenaires

Hébergement Web