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 Oracle Discussion :

ENABLE PARALLEL DML (Oracle 12)


Sujet :

SQL Oracle

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 20
    Points : 10
    Points
    10
    Par défaut ENABLE PARALLEL DML (Oracle 12)
    Bonjour,

    dans le cadre d'une migration 9 -> 12 je dois impacter des scripts SQL.

    Sur la machine en v9, la parallélisation a été désactivé, notamment pour le genre de script suivant :

    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
     
    ALTER SESSION ENABLE PARALLEL DML;
     
    BEGIN
     
    UPDATE BOB
      SET A = B
    WHERE C = D;
     
    UPDATE BOB2
      SET A2 = B2
    WHERE C2 = D2;
     
    V_Vc_Requete := 'INSERT INTO BOB(E)
                    SELECT F
                    FROM G
                    WHERE H = I';
    IF RequeteSQL('&1', '&2', V_Vc_Requete) = 1 THEN
       RAISE V_E_Err;
    END IF;
     
    END;
    /
    QUIT;
    Sur la machine en v12, nous allons réactiver la parallélisation.

    En théorie, les deux requêtes d'update vont être parallélisée et ça ne pose pas de problème dans mon cas.

    La question que je me pose est de savoir, si Oracle 12 est capable de comprendre que le contenu de ma chaîne V_Vc_Requete est parallélisable avec les deux précédentes.
    En d'autres termes, est-ce que Oracle 12 est capable d’interpréter le contenu de ma chaîne, d'en déduire que c'est une requête et de la paralléliser avec les deux précédentes ?

    Merci par avance de vos réponses.

    Cordialement

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    La parallélisation n'est pas exécuter plusieurs requête SQL en même temps : pas besoin de parallélisme pour ça, il suffit de lancer des sessions différentes avec les précautions nécessaires quant aux verrous, c'est lire et traiter une même requête SQL en plusieurs threads.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 20
    Points : 10
    Points
    10
    Par défaut
    C'est une migration en Oracle 12 EXADATA, donc nous sommes bien dans le cas où plusieurs requêtes seront lancées conjointement

Discussions similaires

  1. Réponses: 0
    Dernier message: 21/07/2014, 17h20
  2. Oracle streams: feature not enabled: Streams Capture
    Par chris0938 dans le forum Oracle
    Réponses: 7
    Dernier message: 17/01/2011, 10h45
  3. Erreur Oracle suite a un traitement(parallel query)
    Par D_light dans le forum Oracle
    Réponses: 2
    Dernier message: 16/04/2007, 09h42
  4. [Oracle 9i]: erreur ORA-01925 (max enables roles)
    Par NPortmann dans le forum Oracle
    Réponses: 2
    Dernier message: 30/03/2007, 09h39
  5. Réponses: 8
    Dernier message: 25/01/2007, 13h25

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