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 SQL Server Discussion :

Cache de données et procédure [2008R2]


Sujet :

Administration SQL Server

  1. #1
    Membre expérimenté

    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Novembre 2014
    Messages
    815
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 815
    Points : 1 350
    Points
    1 350
    Billets dans le blog
    2
    Par défaut Cache de données et procédure
    bonjour

    Question pour nos experts

    SI je procède a faire un transfert d'une grande quantité d'information sur un serveur de production et que ce dernier n'a pas suffisamment du RAM, est ce que cette opération peut vider le cache des données vers le disque ?

    autre question sur la même piste : existe-t-il une DMV que je peux interroger pour savoir si le cache de données n'a pas été vidé et quelles sont les différents opérations qui peuvent entraîner un vidage du cache autre que le redémarrage du serveur ?

    merci

  2. #2
    Membre régulier
    Homme Profil pro
    test
    Inscrit en
    Mai 2016
    Messages
    343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Algérie

    Informations professionnelles :
    Activité : test
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Mai 2016
    Messages : 343
    Points : 121
    Points
    121

  3. #3
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Le cache de données de SQL Server n'est jamais vidé sur le disque. Par ailleurs toute manipulation de données se fait exclusivement en RAM.
    Il existe des processus d'arrière plan qui écrivent les pages modifiées à intervalles réguliers dans le fichier de données.

    Si l'on effectue un accès aux données dont le volume dépasse la quantité de RAM allouée à SQL Server, alors les pages de données déjà lues, et celles qui sont dans le cache depuis "longtemps" seront évincées du cache pour permettre aux pages qui n'y sont pas d'être importées en RAM à partir du disque. A ce moment là, on voit le compteur de performances Page Life Expectancy chuter.

    existe-t-il une DMV que je peux interroger pour savoir si le cache de données n'a pas été vidé
    La DMV sys.dm_os_buffer_descriptors permet de connaître à quels objets est allouée le cache de données.
    On peut l'exécuter pour connaître la quantité de RAM dédiée au cache de données pour une base de données et ses objets avec les requêtes proposées ici.

    @++

  4. #4
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Il existe aussi un autre mécanisme appelé page disfavoring qui peut entrer en jeu en fonction du cas.

    L'idée est la suivante: si la volumétrie de données requise dépasse les 10% de la taille du buffer pool alors les pages de données lues pour la ou les tables concernées seront lues puis expulser directement du cache pour éviter justement la pollution de ce dernier. Les pages de données en mémoire pour les autres objets seront expulsées de manière moins agressive en se basant sur le LRU.

    Il y aura de toute façon une chute du page life expectancy dans ce cas mais il faudra l'interpréter peut être différemment.

    A+

  5. #5
    Membre expérimenté

    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Novembre 2014
    Messages
    815
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 815
    Points : 1 350
    Points
    1 350
    Billets dans le blog
    2
    Par défaut
    c'est bien expliquer

    merci bien

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

Discussions similaires

  1. Cache des données
    Par Pill_S dans le forum Hibernate
    Réponses: 4
    Dernier message: 14/11/2007, 09h11
  2. Mise en cache de données
    Par moumoune65 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 20/10/2007, 00h13
  3. Réponses: 2
    Dernier message: 03/08/2007, 10h37
  4. Création d'un cache, mise en cache de donnée indexé
    Par *alexandre* dans le forum Persistance des données
    Réponses: 6
    Dernier message: 19/05/2007, 15h43

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