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 :

Optimisation de la mémoire pour Oracle


Sujet :

Administration Oracle

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut Optimisation de la mémoire pour Oracle
    Bonjour,

    je travaille sur une base Oracle 9i hébergée sur un serveur Unix avec notamment 16 Go de RAM à disposition d'Oracle et de WebLogic.
    Sachant que le serveur WebLo n'utilise pas plus de 3Go de RAM il me reste à disposition 13Go pour ma base Oracle. je voudrais savoir comment optimiser au mieux l'utilisation de ces 13Go de RAM?

    voici qq paramètres au niveau mémoire de ma base:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    db_cache_size : 512 Mo
    db_block_size : 16Ko
    shared_pool_size : 256 Mo
    sort_area_size: 65536
    pga_aggregate_target : 512Mo
    log_buffer : 10485760

  2. #2
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    Ce qui est sûr, c'est que vous ne connaissez pas trop de pénurie !

    Avec 12 Go de marge, on peut discuter...

    1. Avez-vous des problèmes de performances ?
    2. Quel est le type d'activité de la base ?
    3. Combien d'utilisateurs simultanés ?
    4. Quel volume représente la base ? (< 10 Go ?)

    (*) bien sûr, une analyse plus fine devra être menée, mais déjà, c'est pour cerner le contexte !

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    Ok je vous explique.
    Ma base sert à stocker toutes les données de credit d'un grand groupe bancaire français. Chaque schéma correspond aux données d'un stock mensuel. Sachant que chaque schéma fait 12Go environ et qu'on en a plus de 10 sur notre base ça veut dire que notre base fait plus de 100Go.
    on a 3 types d'activité sur notre base:
    - 1ère activité: chaque mois on doit charger en base le nouveau stock de données issues d'autres applications via SQLLOADER puis se met en route un gros traitement batch qui va integrer ces données les valider etc..ça prend plus de 20h et on aimerait réduire ce temps de chargement de moitié.

    - 2ème activité: le but de notre application est de claculer des indicateurs de risques de credit, pour ce faire on a un moteur de calcul développé en JAVA qui se connecte à la base et qui va faire des select massifs au début puis des inserts massifs à la fin.

    - 3ème activité: une IHM est mis à disposition des utilisateurs pour faire des modifications sur la base (insertion d'un credit, modification d'un client...) et pour afficher des restitutions de données.

    La 3ème activité n'est pas celle qui nous cause le plus de soucis de performance, ce sont plus tôt les traitement Batch.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 354
    Par défaut
    Etes-vous en ARCHIVELOG?
    Combien de redo log files vous avez ?
    Avez-vous des "problèmes" de log switch?

    Combien de processeurs ?
    Avez-vous du parallélisme?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    oui on est en mode archive log
    on a 3 redo log files, 4 processeurs.
    qu'entends tu par paralellisme? si plusieurs applis sont lancés en même temps? si c'est ça la réponse est OUI

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 354
    Par défaut
    Pendant les traitements batch, combien de temps dure un fichier redo log?

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    le switch a lieu toutes les 3 minutes
    et en fait j'ai 4 redologs et non pas 3 et chacun ayant une taille de 100 M0

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    voici un extrait du fichier alert.log lors d'un traitement batch :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    Fri Dec 28 15:25:39 2007
    Thread 1 advanced to log sequence 25297
      Current log# 1 seq# 25297 mem# 0: /oradata/prism/rdo/redo01a.log
      Current log# 1 seq# 25297 mem# 1: /oradata/prism/rdo/redo01b.log
    Fri Dec 28 15:25:39 2007
    ARC0: Evaluating archive   log 4 thread 1 sequence 25296
    ARC0: Beginning to archive log 4 thread 1 sequence 25296
    Creating archive destination LOG_ARCHIVE_DEST_1: '/dbo_data/archive/archive_log/arch_prism_25296.arc'
    ARC0: Completed archiving  log 4 thread 1 sequence 25296
    Fri Dec 28 15:27:41 2007
    Thread 1 advanced to log sequence 25298
      Current log# 2 seq# 25298 mem# 0: /oradata/prism/rdo/redo02a.log
      Current log# 2 seq# 25298 mem# 1: /oradata/prism/rdo/redo02b.log
    Fri Dec 28 15:27:41 2007
    ARC0: Evaluating archive   log 1 thread 1 sequence 25297
    ARC0: Beginning to archive log 1 thread 1 sequence 25297
    Creating archive destination LOG_ARCHIVE_DEST_1: '/dbo_data/archive/archive_log/arch_prism_25297.arc'
    ARC0: Completed archiving  log 1 thread 1 sequence 25297
    Fri Dec 28 15:29:43 2007
    Thread 1 advanced to log sequence 25299
      Current log# 3 seq# 25299 mem# 0: /oradata/prism/rdo/redo03a.log
      Current log# 3 seq# 25299 mem# 1: /oradata/prism/rdo/redo03b.log
    Fri Dec 28 15:29:43 2007
    ARC0: Evaluating archive   log 2 thread 1 sequence 25298
    ARC0: Beginning to archive log 2 thread 1 sequence 25298
    Creating archive destination LOG_ARCHIVE_DEST_1: '/dbo_data/archive/archive_log/arch_prism_25298.arc'
    ARC0: Completed archiving  log 2 thread 1 sequence 25298
    Fri Dec 28 15:31:46 2007
    Thread 1 advanced to log sequence 25300
      Current log# 4 seq# 25300 mem# 0: /oradata/prism/rdo/redo04a.log
      Current log# 4 seq# 25300 mem# 1: /oradata/prism/rdo/redo04b.log
    Fri Dec 28 15:31:46 2007
    ARC0: Evaluating archive   log 3 thread 1 sequence 25299
    ARC0: Beginning to archive log 3 thread 1 sequence 25299
    Creating archive destination LOG_ARCHIVE_DEST_1: '/dbo_data/archive/archive_log/arch_prism_25299.arc'
    ARC0: Completed archiving  log 3 thread 1 sequence 25299
    je ne suis que débutant en matière d'administration. j'ai un profile plus developpeur à la base.
    il me semble que ça indique bien le switch+l'arhivage des redologs

  9. #9
    Membre émérite Avatar de 13thFloor
    Homme Profil pro
    DBA Oracle freelance
    Inscrit en
    Janvier 2005
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France

    Informations professionnelles :
    Activité : DBA Oracle freelance

    Informations forums :
    Inscription : Janvier 2005
    Messages : 670
    Par défaut
    Citation Envoyé par farenheiit Voir le message
    je travaille sur une base Oracle 9i hébergée sur un serveur Unix avec notamment 16 Go de RAM à disposition d'Oracle et de WebLogic.
    Sachant que le serveur WebLo n'utilise pas plus de 3Go de RAM il me reste à disposition 13Go pour ma base Oracle. je voudrais savoir comment optimiser au mieux l'utilisation de ces 13Go de RAM?
    16 Go de ram dont 3 pour Weblo, je laisserai quand même 1 Go pour l'OS, 1 pour les process utilisateurs (combien de cnx dédiés au fait?) mais seulement 4 à 8 Go pour la base répartis ainsi :
    cache : 3-7 Go
    dictionnaire : 800 Mo
    pga : 2 Go

    Mais cela n'est qu'indicatif et est à tuner en fonction d'une foule d'éléments :
    - volumétrie des tris
    - utilisation du parallélisme oracle
    - nombre important d'objet stockés et accédés dans le dictionanire (procédures, fonctions...)
    etc.

    La sga ne doit pas prendre 100% de la mémoire.

  10. #10
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 354
    Par défaut
    Vos batches ont lieu à quelle période de la journée?
    Utiolisez-vous des disques en RAID?

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    nos batchs ont lieu à 'nimporte quel moment de la journée ou de la nuit. Le gros batch mensuel qui dure plus de 20h est en général lancé le vendredi soir mais ça peut être un jour de semaine.
    concernant les disques RAID je ne sais pas. Ce que nous avait dit l"hebergeant c'est qu'on avait des disques ultra-rapides d'accès par rapport aux disques classiques.

  12. #12
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 354
    Par défaut
    En regardant le fichier d'alerte fourni, on note qu'un log switch a lieu au bout de trois minutes. Si ça correspond à une période d'activité normale alors il faut agrandir les fichiers redo log.

    D'un autre côté, j'ai posé la question sur l'utilsiation de disques en RAID parce que j'ai noté que les membres redo log sont dans le même répertoire.

  13. #13
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    IL faudrait nous fournir, a minima, un rapport statspack pour une période de chacune des 3 activités possibles.

    Mais là, c'est un gros réglage de paramétrage/tuning général qu'il y a à mener. C'est un véritable chantier, et ça ne se fait pas comme ça...

  14. #14
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    oui je me doute bien qu'il s'agit d'un gros chantier à mener. ma question au préalable était juste sur les paramètres mémoires que je pouvais appliquer en fonction de la RAM dont je dispose.
    merci en tout cas pour vos réponses. Bonne année à tous les membres de developpez.net

  15. #15
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    Quelle est la valeur de LOG_BUFFER ?

    Citation Envoyé par farenheiit Voir le message
    ma question au préalable était juste sur les paramètres mémoires que je pouvais appliquer en fonction de la RAM dont je dispose.
    ça ne peut malheureusement pas se limiter à la simple quantité de RAM dispo Comment savoir si on doit favoriser d'avantage le tri ou le buffer cache ?

  16. #16
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    log_buffer = 10 485 760

  17. #17
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    j'avais pas vu désolé

    la PGA_AGREGATE_TARGET ne me parait pas très grande... il me semblait que c'était 2Go par défaut

    C'est quoi le top 5 des évenements d'attente ?

  18. #18
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    Citation Envoyé par orafrance Voir le message
    j'avais pas vu désolé

    la PGA_AGREGATE_TARGET ne me parait pas très grande... il me semblait que c'était 2Go par défaut

    C'est quoi le top 5 des évenements d'attente ?
    tu oublies que tu as 3 contextes d'utilisation... faut avoir une vision globale des 3 contextes...
    amha, je vois pas comment faire un tel réglage via le forum...

  19. #19
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    heu pas compris la question...

  20. #20
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    2Go par defaut? je ne pense pas. il était déjà à 256 Mo. je l'ai fait passé à 512Mo. et je me demandais justement si je pouvais pas l'augmenter un peu plus. Si oui qu'est ce que ça va apporter?

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/02/2012, 15h45
  2. Réponses: 6
    Dernier message: 31/01/2011, 16h45
  3. Réponses: 6
    Dernier message: 02/05/2010, 19h09
  4. Optimiser la mémoire pour réduire le temp d'import
    Par Bourak dans le forum Administration
    Réponses: 20
    Dernier message: 03/11/2008, 10h23
  5. Réponses: 15
    Dernier message: 11/12/2006, 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