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

Administration Oracle Discussion :

Buffer consommateur de processeur?


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 15
    Par défaut [Résolu] Buffer consommateur de processeur?
    Est-il vrai que le fait d'avoir beaucoup de buffer consomme énormément de processeur?
    Si oui, quel moyen peut-on utilisé pour réduire la quantité de buffer lu?

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 207
    Par défaut
    Bonjour,

    De quels buffers parles tu ? Buffer cache, buffer log,...
    D'ou vient cette "rumeur" , et au final quel est ton problème ?

    Laurent

  3. #3
    Membre expérimenté Avatar de Laurent_du_78
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 138
    Par défaut
    J'imagine que tu parles du cache buffer définit par DB_CACHE_SIZE.

    Oracle trouvant plus souvent les blocks qu'il a besoin dans le cache, ira moins souvent sur le disque et il y aura moins d'attentes liées aux lectures physiques, et donc le CPU sera sollicité plus vite pour ces opérations.

    Conclusion :
    - Pour une requête, la conso CPU sera la même, avec moins d'ELAPSE.
    - Oracle pourra absorber plus de requête en même temps. Les pointes en conso CPU "peuvent" être importantes.

  4. #4
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 15
    Par défaut
    Il s'agit du buffer Gets, en faite, c'est l'analyse fournit par un DBA auquel je dois proposé une solution.

    D'après le site qui suit :
    http://stackoverflow.com/questions/2...ually-refer-to

    Le buffer Gets représente le nombre de fois où ORACLE doit accéder à un bloc durnat l'exécution d'un script.

    En gros par rapport à ma question du début, s'agissant d'un accès I/O physique, c'est toujours coûteuse par rapport à un accès en mémoire.

  5. #5
    Membre expérimenté
    Inscrit en
    Janvier 2009
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 162
    Par défaut
    Bonjour,

    Un buffer get va effectivement consommer de la CPU de par sa nature. Mais avec les architectures matérielles aujourd'hui ce n'est pas vraiment problématique et certainement moins impactant qu'un IO disque... Mieux vaut consommer de la CPU à lire en mémoire que d'aller chercher ses données sur disques (qui d'ailleurs consommeront également de la CPU pour la gestion du cache du file system s'il n'est pas désactivé).
    Maintenant il est possible que 1- le serveur soit sous-dimensionné 2- le code soit mal écrit

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 207
    Par défaut
    Si je regarde ton lien, on voit 140 000 gets pour 31000 executions ce qui ne fait plus que 4000 gets / executions.
    Ensuite cela dépend du nombre de ligne renvoyées. Vue que la requete est simple si par exemple une seule ligne est renvoyé, la probalité d'un index manquant ou des stats non à jour est à creuser. En revanche si ca ramene 10000 lignes il n'y a pas grand chose à faire (à part coté fonctionnel).

    En tout état de cause, un accès disque coute plus chèr qu'un accès mémoire.

    Laurent

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. stencil buffer
    Par patapetz dans le forum OpenGL
    Réponses: 6
    Dernier message: 26/02/2004, 17h23
  2. Processeur
    Par delire8 dans le forum C++Builder
    Réponses: 14
    Dernier message: 05/09/2002, 13h33
  3. Vider le buffer du clavier
    Par flavien tetart dans le forum x86 16-bits
    Réponses: 2
    Dernier message: 12/07/2002, 08h35
  4. Affichage en passant par un buffer...
    Par Sirotilc dans le forum MFC
    Réponses: 5
    Dernier message: 27/05/2002, 21h00
  5. Alpha blending et Z-buffer directx 8
    Par Cesar4 dans le forum DirectX
    Réponses: 1
    Dernier message: 23/05/2002, 12h58

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