IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Firebird Discussion :

Que signifie Pagesize ?


Sujet :

Firebird

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 25
    Points : 25
    Points
    25
    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...

  2. #2
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    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.

  3. #3
    Membre éprouvé
    Avatar de Andry
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2002
    Messages
    1 164
    Détails du profil
    Informations personnelles :
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 164
    Points : 1 181
    Points
    1 181
    Par défaut
    J'ai eu cette information sur le site de SQLPro http://sql.developpez.com/optimiser/
    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 .....

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 25
    Points : 25
    Points
    25
    Par défaut
    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.

Discussions similaires

  1. que signifie "raw_" devant une fonction?
    Par raoulmania dans le forum MFC
    Réponses: 2
    Dernier message: 10/10/2005, 11h12
  2. Que signifie "Error : Data truncation" ??
    Par BouB dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 20/05/2005, 16h20
  3. [SQL6]Que signifie ce LEFT ?
    Par guy2004 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 30/01/2005, 19h18
  4. Que signifier $0 et $@
    Par jaabouc dans le forum Linux
    Réponses: 6
    Dernier message: 01/06/2004, 15h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo