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

DB2 Discussion :

[DB2 sur Iseries V5R4] Administration: suppression des index non utilisés.


Sujet :

DB2

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 97
    Points : 79
    Points
    79
    Par défaut [DB2 sur Iseries V5R4] Administration: suppression des index non utilisés.
    Bonjour Messieurs

    J'ai commencé a me faire une petite procédure (au sens maniére de pratiquer la chose) concernant la réinitialisation des compteurs d'utilisation des index puis etudes des index pour suppression des index inutilisés (laps de temps requis entre les deux).

    j'envisagéais la chose comme ceci :

    ** Réinitialisation du comptage d'utilisation sur index :
    (le nom des index commence par IX... chez nous)
    ** Puis requette d'analyse :

    ---
    -- Creation du fichier de sortie pour etude sur les index
    ---
    CL: DSPOBJD OBJ(Mabib/IX*) OBJTYPE(*FILE) OUTPUT(*OUTFILE) OUTFILE(QTEMP/QRYINDEX) ;
    ---
    -- Selection Global sur les index (Stat d'util, date etc ...)
    ---
    select
    TABLE_NAME, INDEX_NAME, ODOBNM as Noms, ODOBSZ as Size,
    'AAAA-MM-JJ' as Format_Date,
    Case ODCDAT when ' ' then ' ' else '20' || substr(ODCDAT, 5, 2) || '-' || substr(ODCDAT, 1, 2) || '-' || substr(ODCDAT, 3, 2) end as date_creation,
    Case ODLDAT when ' ' then ' ' else '20' || substr(ODLDAT, 5, 2) || '-' || substr(ODLDAT, 1, 2) || '-' || substr(ODLDAT, 3, 2) end as date_modif,
    Case ODUDAT when ' ' then ' ' else '20' || substr(ODUDAT, 5, 2) || '-' || substr(ODUDAT, 1, 2) || '-' || substr(ODUDAT, 3, 2) end as Last_used_date,
    Case ODTDAT when ' ' then ' ' else '20' || substr(ODTDAT, 5, 2) || '-' || substr(ODTDAT, 1, 2) || '-' || substr(ODTDAT, 3, 2) end as reset_dat,
    ODUCNT as Days_used_count
    from qtemp.qryindex, Mabib.sysindexes where ODOBNM = SYSTEM_INDEX_NAME
    order by TABLE_NAME with ur ;
    ---
    -- Selection Global sur les index (Stat d'util, date etc ...) avec nbr utilisation = 0
    ---
    select
    TABLE_NAME, INDEX_NAME, ODOBNM as Noms, ODOBSZ as Size,
    'AAAA-MM-JJ' as Format_Date,
    Case ODCDAT when ' ' then ' ' else '20' || substr(ODCDAT, 5, 2) || '-' || substr(ODCDAT, 1, 2) || '-' || substr(ODCDAT, 3, 2) end as date_creation,
    Case ODLDAT when ' ' then ' ' else '20' || substr(ODLDAT, 5, 2) || '-' || substr(ODLDAT, 1, 2) || '-' || substr(ODLDAT, 3, 2) end as date_modif,
    Case ODUDAT when ' ' then ' ' else '20' || substr(ODUDAT, 5, 2) || '-' || substr(ODUDAT, 1, 2) || '-' || substr(ODUDAT, 3, 2) end as Last_used_date,
    Case ODTDAT when ' ' then ' ' else '20' || substr(ODTDAT, 5, 2) || '-' || substr(ODTDAT, 1, 2) || '-' || substr(ODTDAT, 3, 2) end as reset_dat,
    ODUCNT as Days_used_count
    from qtemp.qryindex, Mabib.sysindexes where ODOBNM = SYSTEM_INDEX_NAME and ODUCNT =0
    order by Last_used_date desc,TABLE_NAME with ur ;
    Suis je sur la bonne route ?

    Quel est votre maniére de procedez ?

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    821
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2008
    Messages : 821
    Points : 1 084
    Points
    1 084
    Par défaut
    Euhh juste une question, pourquoi utiliser DSPOBJD, il existe pas mal d'infos sur QSYS2.SYSIXSTAT

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 97
    Points : 79
    Points
    79
    Par défaut
    Merci K2R400

    je ne connaissais pas cette table, ou vue.

    Mais aprés vérif comme ceci :

    DSPOBJD OBJ(*ALL/SYSIX*) OBJTYPE(*ALL)
    je n'obtient que ces objets :
    SYSIXADV
    SYSIXADVIX
    Donc La table ou la vue dont tu me parle ne vient peut être qu'en V6R1 Ou n'existe que dans des environnements autre que Iseries.

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    821
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2008
    Messages : 821
    Points : 1 084
    Points
    1 084
    Par défaut
    Oups, tu as 100x fois raison, nouveauté V6R1
    Sinon, pour ce que tu as raison, j'aurai procédé à peu près de façon similaire.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 97
    Points : 79
    Points
    79
    Par défaut
    Oui mais ... voila j'ai un doute regarde parmi 1 des résultats:

    TABLES1 IX_TABLES1_7 IX_TA00022 9999999999 AAAA-MM-JJ 18/03/2007 18/05/2009 19/05/2008 06/01/2009 0
    puis ensuite visualisation directe par clique droit propriété sur l'index en question : (Voire les images en piéces jointes)

    Il s'agit de deux onglets sur lequels tu veras a chaque fois "date de derniére utilisation" etc...

    A priori la date que je retrouve dans mon dspobjd correspond au premier onglet.

    A quel date doit on ce fier..... ????????

    Vu la taille de cette table, des index et sa sensibilité dans l'applicatif (en sachant que je met au minimun 3h pour y construire un index)

    j'y vais a patte de velours.

    Qu'en pense tu ?
    Images attachées Images attachées   

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    821
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2008
    Messages : 821
    Points : 1 084
    Points
    1 084
    Par défaut
    L'information fiable provient de l'onglet UTILISATION

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 97
    Points : 79
    Points
    79
    Par défaut
    C'est ce que je suposé vu que le compteur d'utilisation s'y trouve aussi.

    Ce doublon d'intitulé "Date de modification" vient peut être d'une mauvaise traduction sur la version francaise d'Iseries access comme a d'autres endroits.

    Et puis de toute facon je suis un peu bête sur ce coup car je peut le tester simplement.

    Encore une fois merci pour ta réponse K2R400, je marque ce sujet comme Résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. DB2 sur ISeries accès avec C#
    Par annstger dans le forum DB2
    Réponses: 10
    Dernier message: 26/12/2011, 22h47
  2. Réponses: 3
    Dernier message: 17/10/2010, 18h10
  3. Suppression des index FullText
    Par balmeyer dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 16/11/2007, 16h15
  4. Réponses: 1
    Dernier message: 24/10/2006, 00h24

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