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

Import/Export Oracle Discussion :

Table + Index Partionn�es


Sujet :

Import/Export Oracle

  1. #1
    Membre confirm�
    Inscrit en
    D�cembre 2003
    Messages
    102
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2003
    Messages : 102
    Par d�faut Table + Index Partionn�es
    Voila j'ai une table avec 3.5 million de lignes et je voudrais essaye dans faire une table partionnees avec un index partionnees, histoire de voir si les perfs peuvent etre meilleur?

    Je voudrais faire des range partitions (table et index).
    Quelqu'un a t-il d�ja fais ce genre de chose?
    Merci

  2. #2
    R�dacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    D�cembre 2002
    Messages
    3 461
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 3 461
    Par d�faut Re: Table + Index Partionn�es
    Citation Envoy� par superfly
    Voila j'ai une table avec 3.5 million de lignes et je voudrais essaye dans faire une table partionnees avec un index partionnees, histoire de voir si les perfs peuvent etre meilleur?

    Je voudrais faire des range partitions (table et index).
    Quelqu'un a t-il d�ja fais ce genre de chose?
    Merci
    Merci d'�tre pr�cis dans votre question !
    Quel genre d'infos recherchez-vous ?

  3. #3
    Membre confirm�
    Inscrit en
    D�cembre 2003
    Messages
    102
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2003
    Messages : 102
    Par d�faut
    En fait je voulais savoir si quelqu'un avait d�j� impl�ment� cela sur une table existante car le souci c'est que cela modifie la structure de la table. Donc il faut extraire les donn�es puis les remettres...
    J'ai extraits les donn�es avec EXP et je les ai import� avec IMP, et biensur j'ai plus rien dans la table comme si il ne pouvait pas importer les donn�es....

  4. #4
    Membre confirm�
    Inscrit en
    D�cembre 2003
    Messages
    102
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2003
    Messages : 102
    Par d�faut
    je crois que j'ai trouv� mon probl�me....

  5. #5
    Membre confirm�
    Inscrit en
    D�cembre 2003
    Messages
    102
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2003
    Messages : 102
    Par d�faut
    voici un petit bout de code et l'erreur que me g�n�re Oracle, peut-etre que quelqu'un aura une id�e car moi je suis un peu sec
    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
     
    CREATE TABLE t_Historique 
         (   NUM_ETA    NUMBER(8),
      NUM_ASS    NUMBER(6),
      NUM_CLI    NUMBER(6),
      NUM_AFF    NUMBER(2),
      COD_ACT    VARCHAR2(5),
      COD_BNF    VARCHAR2(5),
      NUM_SIN    NUMBER(8),
      NUM_GAR    NUMBER(3),
      COD_ART    VARCHAR2(5),
      COD_TAB    VARCHAR2(2) not null,
      COD_EVT    VARCHAR2(5) not null,
      COD_USR    VARCHAR2(15) not null,
      COD_COU    VARCHAR2(10),
      DAT_HST    DATE not null,
      LIB_IMGAVT VARCHAR2(60),
      LIB_IMGAPR VARCHAR2(60),
      COD_DOC    VARCHAR2(5) )
       PARTITION BY RANGE ( NUM_CLI)
         ( PARTITION num_cli_q1 VALUES LESS THAN ( 100000)
            TABLESPACE INDEX_3)
         ENABLE ROW MOVEMENT
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Fichier d'export créé par EXPORT:V08.01.07 via le chemin classique
    import effectué dans le jeu de caractères WE8ISO8859P1 et le jeu NCHAR WE8ISO8859P1
    . Import d'objets OP dans OP
    . . Import de la table                  "T_HISTORIQUE"
    IMP-00058: Erreur ORACLE 14400 rencontrée
    ORA-14400: la clé de partition insérée dépasse la limite supérieure autorisée
    IMP-00028: Import partiel de la table précédente annulée : lignes 190660 annulées
    Préparation à l'activation des contraintes...
    Fin de l'import réussie avec avertissements.
    Merci

  6. #6
    Expert Oracle confirm�

    Homme Profil pro
    Consultant Big Data
    Inscrit en
    Mars 2003
    Messages
    448
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : Consultant Big Data
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2003
    Messages : 448
    Par d�faut
    Bonjour,

    C'est normal que cela plante. Tu as cr�� une table partitionn�e avec une seule partition qui accueille les donn�es inf�rieures � 100000.

    Or tout semble indiquer que ta table d'origine contient des donn�es sup�rieures � 100000. Et le pb, c'est qu'il n'y a pas une autre partition pour accueillir ce genre de valeurs.

    Tu aurais du cr�er ta table avec 2 partitions, de la mani�re suivante :

    Code:

    CREATE TABLE t_Historique
    ( NUM_ETA NUMBER(8),
    NUM_ASS NUMBER(6),
    NUM_CLI NUMBER(6),
    NUM_AFF NUMBER(2),
    COD_ACT VARCHAR2(5),
    COD_BNF VARCHAR2(5),
    NUM_SIN NUMBER(8),
    NUM_GAR NUMBER(3),
    COD_ART VARCHAR2(5),
    COD_TAB VARCHAR2(2) not null,
    COD_EVT VARCHAR2(5) not null,
    COD_USR VARCHAR2(15) not null,
    COD_COU VARCHAR2(10),
    DAT_HST DATE not null,
    LIB_IMGAVT VARCHAR2(60),
    LIB_IMGAPR VARCHAR2(60),
    COD_DOC VARCHAR2(5) )
    PARTITION BY RANGE ( NUM_CLI)
    ( PARTITION num_cli_q1 VALUES LESS THAN ( 100000) TABLESPACE INDEX_3,
    PARTITION num_autres VALUES LESS THAN (MAXVALUE) TABLESPACE INDEX_3
    ) ENABLE ROW MOVEMENT
    Comme tu le vois, j'ai cr�� la table avec une autre partition NUM_AUTRES et en sp�cifiant la clause MAXVALUE.

    Sinon, au lieu de d�truire ta table et de la recr�er avec 2 partitions, tu peux utiliser un ALTER TABLE ... SPLIT PARTITION...

    Merci de regarder la doc Oracle pour en savoir plus sur cette syntaxe

  7. #7
    Membre confirm�
    Inscrit en
    D�cembre 2003
    Messages
    102
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2003
    Messages : 102
    Par d�faut
    Merci rouardg

  8. #8
    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
    Pour r�pondre � la probl�matique de performance, je te confirme que les indexes partitionn�s peuvent r�soudre des probl�mes de perf sur les gros volume... en revanche je suis beaucoup moins convaincu par le partitionnement de la table

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [9i] Taille table / index
    Par sygale dans le forum Oracle
    R�ponses: 5
    Dernier message: 23/01/2007, 09h18
  2. Creation d'une table index�e sur un TINYTEXT
    Par EvilAngel dans le forum SQL Proc�dural
    R�ponses: 6
    Dernier message: 20/08/2006, 19h03
  3. R�ponses: 1
    Dernier message: 21/04/2006, 18h47
  4. en-t�te de table/index endommag�e
    Par colombe dans le forum Bases de donn�es
    R�ponses: 5
    Dernier message: 08/10/2005, 11h55
  5. vider table + index primaire
    Par jihed dans le forum Bases de donn�es
    R�ponses: 5
    Dernier message: 28/07/2004, 16h43

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