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

SQL*Loader Oracle Discussion :

Performance SQL LOADER


Sujet :

SQL*Loader Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 74
    Par défaut Performance SQL LOADER
    Bonjour,

    Avec sql loader je fait un loading de fichier.
    nombre de fichier a loader : 2800
    chaque ligne dans mon fichier : 800 octet
    moyenne de ligne par fichier : 30 000 ligne
    avec une table sans index le temps de réponse : 3 heures
    avec une table indexée : 17 heures !!!
    Je lance le sql loader :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    sqlldr DATA=mon_fichier LOG=log_fichier BAD=bad_fichier
    CONTROL=control_fichier
    c.a.d : sans option.
    comment faire pour améliorer le temp de réponse ?

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Est-ce que votre base fonctionne en mode ARCHIVE LOG ? Pour accélerer les traitements, je conseille de :
    1. faire une sauvegarde complète de la base avant chargement par sqlldr
    2. désactiver le mode archive log de votre base
    3. exécuter les chargements
    4. réactiver le mode archive log de votre base
    5. refaire une sauvegarde complète de la base
    Sinon, utilisez le paramètre DIRECT de sqlldr avec les mêmes contraintes; voir http://jaouad.developpez.com/sqlldr/#LIII-C-1

  3. #3
    Rédacteur

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 320
    Par défaut
    Bonjour ,
    En effet il existe souvent des problémes de performances de SQL*Loader .
    En plus des problémes de performances d'Oracle même , Sql*loader peut ajouter des problémes.

    Il est clair qu'une table sans index serat plus rapide qu'une table avec indexs lors d'un chargement. Cela est due tout simplement au fait que lorsque vous insérez dans une table , une mise à jour des indexs doit être opéres.

    Améliorer les perfs Sql*Loader :

    - Activez l'option direct.
    - Placer la table en mode nologging.
    - Ne pas placer le fichier à insérer dans le même espace physique que les TBS à insérer.
    - Suppréssion des index

    Améliorer les perfs Oracle :

    - Reconstruire les index en utilisant le parrallélisme, le mode nologging et l'option nosort si possible.
    - Si la table est vidé avant chargement, effectuer le truncate avec l'option : reuse storage
    - Verifier que les tbs sont bien en locally managed.
    - Vérifier les évènement d'attente.


    Ce n'est pas une liste exhaustive mais juste un début de piste. Tu pourrais peut être nous en dire un peu plus notamment si tu n'insére qu'une table ou plusieurs. Est ce que ces tables sont des tables de travails ou est ce qu'elles ont déja des données.


    Jaouad

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 74
    Par défaut
    Est ce que ces tables sont des tables de travails ou est ce qu'elles ont déja des données
    Effectivement ma table est utiliser comme un archive des données, c.a.d : ma table contient déjà des données et je fais un loading des fichier au fur et mesure.

    est ce que en utilisant les options :
    bindsize
    rows
    ça fait améliorer les choses ?
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    sqlldr DATA=mon_fichier LOG=log_fichier BAD=bad_fichier 
    CONTROL=control_fichier BINDSIZE=512000 ROWS=30000
    Merci pour votre réponse

Discussions similaires

  1. Performance de SQL LOADER
    Par AbouZaid dans le forum SQL
    Réponses: 6
    Dernier message: 02/06/2011, 15h27
  2. Performance OCI vs SQL Loader
    Par falcon74 dans le forum Interfaces de programmation
    Réponses: 24
    Dernier message: 04/05/2009, 16h12
  3. Performance SQL Loader
    Par devdev2003 dans le forum SQL*Loader
    Réponses: 4
    Dernier message: 31/07/2007, 15h47
  4. Réponses: 4
    Dernier message: 10/06/2004, 18h05
  5. erreur sql loader et performance
    Par mobisky dans le forum SQL*Loader
    Réponses: 14
    Dernier message: 20/08/2003, 12h27

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