DATAPARTITION
Utilisez l'option DATAPARTITION pour indiquer les partitions de données à décharger.
Restriction : Si l'option DATAPARTITION est utilisée pour une table non partitionnée, Optim™ High Performance Unload ignore l'option, et si l'une des partitions de données spécifiées n'existe pas dans la table actuelle, Optim High Performance Unload renvoie une erreur.
- DATAPARTITION ID
- Cette option correspond à la colonne DATAPARTITIONID des
partitions de données des données déchargées. Elle permet de limiter le traitement aux partitions de données contenant les ID internes.
- Syntaxe
DATAPARTITION ID (nn)- Variables
- Liste de valeurs entières. Vous pouvez indiquer une valeur, une liste séparée par des virgules ou une plage de numéros de partition de données (numéros de début et de fin séparés par un deux-points). Par exemple, (5:9) indique les partitions de données dont les identifiants internes sont 5, 6, 7, 8 et 9.
- Par défaut
- Néant.
- Exemple
- Prenez en compte la définition de la table DOCUMENTS suivante :
Considérons le contenu suivant du tableau d' SYSIBM.SYSDATAPARTITIONS, les espaces de tableau nommés TBS1 et TBS2 ayant respectivement les identifiants 5 et 6 :CREATE TABLE DOCUMENTS (ID INTEGER, CONTENTS CLOB) IN TBS1, TBS2 PARTITION BY RANGE (ID) (STARTING 1 ENDING 1000 EVERY 100)
Pour décharger uniquement les partitions dont les IDS internes sont 0, 5, 6 et 7, utilisez le fichier de contrôle suivant :select VARCHAR(DATAPARTITIONNAME, 10), VARCHAR(TABNAME,15), DATAPARTITIONID, SEQNO, TBSPACEID from sysibm.sysdatapartitions where tabname='DOCUMENTS' 1 2 DATAPARTITIONID SEQNO TBSPACEID ---------- --------------- --------------- ----------- ----------- PART0 DOCUMENTS 0 0 5 PART1 DOCUMENTS 1 1 6 PART2 DOCUMENTS 2 2 5 PART3 DOCUMENTS 3 3 6 PART4 DOCUMENTS 4 4 5 PART5 DOCUMENTS 5 5 6 PART6 DOCUMENTS 6 6 5 PART7 DOCUMENTS 7 7 6 PART8 DOCUMENTS 8 8 5 PART9 DOCUMENTS 9 9 6 10 record(s) selected.
Les partitions de données dont les IDS internes sont 0, 5, 6 et 7 sont déchargées dans le fichier d' datapart_0_5_6_7.del .GLOBAL CONNECT TO SAMPLE; UNLOAD TABLESPACE SELECT * FROM DOCUMENTS; DATAPARTITION ID(0, 5:7) OUTFILE("datapart_0_5_6_7.del") FORMAT DEL;
- DATAPARTITION NAME
- Cette option correspond à la colonne DATAPARTITIONNAME des
partitions de données des données déchargées. Elle permet de limiter le traitement aux partitions de données qui contiennent les noms.
- Syntaxe
DATAPARTITION NAME (datapartition_name)- Variables
- Liste de noms de partition de données séparée par des virgules.
- Par défaut
- Néant.
- Exemple
- Considérons la définition de la table DOCUMENTS et le contenu de la table SYSIBM.SYSDATAPARTITIONS, décrits dans l'exemple DATAPARTITION ID. Pour décharger uniquement les partitions de données dont les IDS internes sont 0, 5, 6 et 7 avec l'option DATAPARTITION NAME, utilisez le fichier de contrôle suivant :
Les partitions de données dont les IDS internes sont 0, 5, 6 et 7 sont déchargées dans le fichier d' datapart_0_5_6_7.del .GLOBAL CONNECT TO SAMPLE; UNLOAD TABLESPACE SELECT * FROM DOCUMENTS; DATAPARTITION NAME(PART0,PART5,PART6,PART7) OUTFILE("datapart_0_5_6_7.del") FORMAT DEL;
- NUMÉRO DE LA PARTITION DE DONNÉES
- Cette option correspond à la colonne SEQNO des partitions de données des données déchargées. Il permet de limiter le traitement aux partitions de données dont les numéros de séquence y sont répertoriés.
- DATAPARTITION TBSPACE
- Cette option correspond au nom de l'espace table associé à la colonne TBSPACEID des partitions de données traitées. Elle permet de limiter le traitement aux partitions de données qui se trouvent dans les espaces table contenant les noms.
- Syntaxe
DATAPARTITION TBSPACE (tablespace_name)- Variables
- Liste de noms d'espace table séparés par des virgules.
- Par défaut
- Néant.
- Exemple
- Considérons la définition de la table DOCUMENTS et le contenu de la table SYSIBM.SYSDATAPARTITIONS, décrits dans l'exemple DATAPARTITION ID. Pour décharger uniquement les partitions de données dont les IDS internes sont 0, 2, 4, 6 et 8, situées dans l'espace de table nommé « TBS1 », utilisez le fichier de contrôle suivant :
Les partitions de données dont les IDS internes sont 0, 2, 4, 6 et 8, situées dans l'espace de table nommé « TBS1 », sont déchargées dans le fichier « datapart_0_2_4_6_8.del ».GLOBAL CONNECT TO SAMPLE; UNLOAD TABLESPACE SELECT * FROM DOCUMENTS; DATAPARTITION TBSPACE (TBS1) OUTFILE("datapart_0_2_4_6_8.del") FORMAT DEL;
Exemple : Déchargement des partitions de données dans plusieurs fichiers de sortie
Pour décharger les partitions de données dans des fichiers de sortie distincts, vous devez utiliser la clause OUTFILE avec les mots-clés de modèle % {datapartition_id}, % {datapartition_name}, % {datapartition_num} ou % {datapartition_tbspace}.
Par exemple, étudiez
la définition de table SALES_DP :
CREATE TABLE SALES_DP(invoice_date date,
inv_month int NOT NULL,
inv_year INT NOT NULL,
item_id int NOT NULL,
cust_id int NOT NULL)
PARTITION BY RANGE (inv_year, inv_month)
(PART Q1_02 STARTING (2002,1) ENDING (2002, 3) INCLUSIVE,
PART Q2_02 ENDING (2002, 6) INCLUSIVE,
PART Q3_02 ENDING (2002, 9) INCLUSIVE,
PART Q4_02 ENDING (2002,12) INCLUSIVE,
PART CURRENT ENDING (MAXVALUE, MAXVALUE))Considérons le contenu suivant d'une table d' SYSIBM.SYSDATAPARTITIONS s :select VARCHAR(DATAPARTITIONNAME, 10), VARCHAR(TABNAME,15), DATAPARTITIONID from sysibm.sysdatapartitions where tabname='SALES_DP'
1 2 DATAPARTITIONID
---------- --------------- ---------------
Q1_02 SALES_DP 0
Q2_02 SALES_DP 1
Q3_02 SALES_DP 2
Q4_02 SALES_DP 3
CURRENT SALES_DP 4
5 record(s) selected.Si vous souhaitez décharger les
partitions de données Q1_02 et Q2_02 uniquement et que vous souhaitez
décharger chacune de ces partitions de données dans un fichier
distinct, vous pouvez utiliser le fichier de contrôle suivant :GLOBAL CONNECT TO SAMPLE;
UNLOAD TABLESPACE
SELECT * FROM DOCUMENTS;
DATAPARTITION NAME(Q1_02, Q2_02)
OUTFILE("datapart.del.%{datapartition_name}")
FORMAT DEL;Pour ce fichier de contrôle, Optim High Performance Unload crée les fichiers suivants sur l'hôte actuel :- datapart.del.Q1_02 avec des données provenant de la partition de données Q1_02
- datapart.del.Q2_02 avec des données provenant de la partition de données Q2_02