Gestionnaire d'index

Le gestionnaire d'index est un attribut de l'objet Serveur qui vous permet de gérer les index des bases de données. Ces index, utilisés par eDirectory au cours des requêtes, permettent d'optimiser les performances de recherche.

eDirectory est livré avec un ensemble d'index offrant des fonctionnalités de recherche élémentaire. Ces index par défaut s'appliquent aux attributs suivants :

cn

Nom d'objet en alias

dc

Notice nécrologique

Prénom

Membre

Nom

Référence

uniqueID

Équivalent à moi

GUID

NLS: Common Certificate

Vous pouvez également créer des index personnalisés afin d'améliorer les performances de eDirectory dans votre environnement. Par exemple, si votre entreprise a mis en oeuvre une nouvelle application LDAP qui recherche un attribut qui n'est pas indexé par défaut, il peut s'avérer nécessaire de créer un index pour cet attribut.

REMARQUE :  Bien que les index améliorent les performances en matière de recherche, des index supplémentaires risquent toutefois d'augmenter le temps nécessaire aux mises à jour. En règle générale, ne créez de nouveaux index que si vous pensez que la recherche d'un annuaire spécifique peut avoir des conséquences sur les performances de l'application.

ConsoleOne vous permet de créer et de supprimer des index. Vous pouvez également afficher et gérer les propriétés de chaque index, comme son nom, son état, son type, sa règle et l'attribut indexé.

Utilisez les données Statistiques de prédicat pour connaître les index complémentaires susceptibles de présenter un intérêt dans votre environnement. Reportez-vous à Données de prédicat.


Création d'un index

Pour créer un index :

  1. Dans ConsoleOne, cliquez avec le bouton droit de la souris sur l'objet Serveur, cliquez sur Propriétés, Gestionnaire d'index et sur Ajouter.

  2. Saisissez le nom de l'index.

    Si vous ne saisissez aucun nom pour cet index, l'attribut lui est automatiquement assigné comme nom.

    IMPORTANT :  Le caractère $ est utilisé comme séparateur pour les valeurs d'attribut. Si vous souhaitez utiliser le caractère $ dans le nom de votre index, vous devez le faire précéder d'une barre oblique (/) afin qu'il soit interprété comme caractère littéral $ lors de la manipulation d'index via LDAP.

  3. Sélectionnez un attribut

  4. Sélectionnez la règle d'index.

    • Valeur: Recherche la valeur entière ou la première partie de la valeur d'un attribut. Par exemple, cet attribut peut être utilisé pour rechercher des entrées dont l'attribut " LastName " est " Bernard " et celles dont l'attribut " LastName " commence par " Ber ".

    • Présence: Requiert uniquement la présence d'un attribut et non de valeurs spécifiques de l'attribut. Une requête visant à rechercher toutes les entrées portant un attribut " Script de login " utiliserait un index de présence.

    • Sous-chaîne: Recherche une sous-chaîne de la chaîne de valeur d'un attribut. Par exemple, une requête visant à rechercher les entrées dont l'attribut " LastName " comporte " ber " renverrait aussi bien " Bernard ", " Flaubert " que " Auberthelot "

      Un index de sous-chaîne est le type d'index dont la création et la gestion exigent le plus de ressources du système.

  5. Cliquez sur OK pour mettre à jour la table des index.

  6. Cliquez sur Appliquer pour redémarrer le contrôle de la connectivité (limber) en arrière-plan et appliquer la modification.


Suppression d'un index

Un index, qu'il serve encore ou non, reste sur le système tant qu'il n'est pas supprimé explicitement. Par conséquent, vous pouvez supprimer les index (définis par l'utilisateur ou créés automatiquement) que vous n'utilisez plus. Utilisez les statistiques de prédicat pour identifier les index les moins souvent utilisés.

  1. Dans ConsoleOne, cliquez avec le bouton droit de la souris sur l'objet Serveur, cliquez sur Propriétés, Gestionnaire d'index, puis sur Supprimer.

  2. Sélectionnez l'index défini par l'utilisateur ou l'index ajouté automatiquement à supprimer.

  3. Cliquez Supprimer, puis sur OK pour mettre à jour la table des index.

  4. Cliquez sur Appliquer pour redémarrer le contrôle de la connectivité en tâche de fond et appliquer la modification.


Mise hors ligne d'un index

Lors des augmentations ponctuelles de votre activité, il est possible de vous souhaitiez ajuster les performances en mettant temporairement hors ligne certains index. Par exemple, afin d'accélérer le chargement en bloc des données, il est possible que vous souhaitiez suspendre tous les index définis par l'utilisateur. Dans la mesure où l'ajout et la modification d'objets impliquent la mise à jour des index définis, l'activation simultanée de tous les index peut ralentir considérablement le chargement en bloc des données. Une fois le chargement en bloc des données terminé, vous pourrez remettre en ligne les index.

  1. Dans ConsoleOne, cliquez avec le bouton droit de la souris sur l'objet Serveur, cliquez sur Propriétés, Gestionnaire d'index, puis sur Propriétés.

  2. Sélectionnez les index que vous souhaitez mettre hors ligne > cliquez sur Mettre hors ligne.

    L'état de l'index passe de En ligne à Hors ligne dans la table d'affichage. Les états d'index possibles sont les suivants :

    • En ligne: En cours d'exécution

    • Hors ligne: Index mis en attente pouvant être relancé en cliquant sur Mettre en ligne

    • Nouveau: Index en attente de passage en mode En ligne

    • Supprimé: Index en attente de suppression de la table des index

  3. Cliquez sur OK.


Gestion des index sur d'autres serveurs

Si vous pensez qu'un index utilisé sur un serveur peut être utile sur un autre serveur, vous pouvez copier la définition de cet index d'un serveur vers l'autre. Lors de la révision des données de prédicat, il est possible que vous vous retrouviez dans le cas de figure inverse : un index que vous utilisiez sur plusieurs serveurs n'est désormais plus utile sur l'un de ces serveurs. Dans ce cas, vous pouvez supprimer l'index de ce serveur.

Le gestionnaire d'index vous permet de cibler une instance spécifique d'un index, et faire en sorte que vos manipulations n'affectent pas toutes les instances de l'index.

  1. Dans ConsoleOne, cliquez avec le bouton droit de la souris sur l'objet Serveur, cliquez sur Propriétés, Gestionnaire d'index, puis sur Autres serveurs.

  2. Pour copier un index, sélectionnez le serveur sur lequel vous souhaitez copier l'index puis sélectionnez Créer l'index.

    Vous pouvez utiliser l'option Charger les serveurs pour rechercher un serveur qui ne figure pas dans la liste des serveurs.

    Si un index portant le même attribut et le même type est trouvé sur le serveur cible, le nom et l'état de cet index est modifié afin d'être le même que celui en cours de copie.

  3. Pour supprimer un index, sélectionnez le serveur contenant l'index que vous souhaitez supprimer puis sélectionnez Supprimer l'index.

  4. Cliquez sur Fermer.


Utilisation de l'utilitaire ndsindex pour gérer des index sur des systèmes Linux et Solaris

L'utilitaire ndsindex vous permet de créer, lister ou supprimer des index sur des systèmes Linux ou Solaris.

Outre une amélioration des performances, les index vous permettent d'utiliser le contrôle SSS (Server Side Sorting) ou VLV (Virtual List View) afin de lancer des recherches LDAP sur le serveur LDAP eDirectory. Le serveur eDirectory contient les index gérés par eDirectory. L'utilitaire ndsindex vous permet de gérer ce type d'index sur des systèmes Linux ou Solaris.


Tableau 43. Options ndsindex

Option Description

-h

Nom d'hôte. Indique le nom DNS ou l'adresse IP du serveur LDAP des NDS. Le serveur par défaut est l'hôte local.

-p

Port. Indique le numéro de port du serveur LDAP des NDS. Le port par défaut est 389.

-D

DN LDAP utilisateur. Indique le DN LDAP de l'utilisateur dans eDirectory.

-W

Invite à entrer le mot de passe du DN LDAP spécifié.

-w

Mot de passe. Indique le mot de passe du DN LDAP dans eDirectory.

-n

DN serveur NDS. Indique le DN du serveur NDS.

indexDefinition

Chaque entrée indexDefinition contient les informations sur un index particulier. La représentation de la chaîne est la suivante, "<NomIndex>;<NomAttribut>;<RègleConcordance>".

indexName

Nom que vous souhaitez attribuer à l'index.

attributeName

Nom de l'attribut eDirectory à indexer.

matchingRule

L'option matchingRule peut être définie sur VALUE (valeur), SUBSTRING (sous-chaîne) ou PRESENCE (présence).

VALUE : Cette option permet d'optimiser les recherches d'entrées qui contiennent toute ou partie de la valeur spécifiée dans le filtre de recherche.

SUBSTRING : Cette option permet d'optimiser les recherches d'entrées qui contiennent plusieurs des caractères de la valeur spécifiée dans le filtre de recherche.

PRESENCE : Cette option permet d'optimiser les recherches d'entrées qui contiennent un attribut spécifié.