> Tech > Qui veut un annuaire à  100 millions d’entrée ?

Qui veut un annuaire à  100 millions d’entrée ?

Tech - Par iTPro.fr - Publié le 24 juin 2010
email

par Tony Redmond et Micky Balladelli
Tout le monde est conscient que la base de données SAM de Windows NT est un goulet d'étranglement pour les capacités d'évolution des domaines. En effet, la limite pratique de la SAM se situe à  environ 40.000 comptes d'utilisateurs par domaine. Certaines entreprises, qui sont allées jusqu'aux limites supérieures de la SAM et ont créé de très grands domaines, ont constaté que ces derniers sont difficiles à  gérer.Windows 2000 repose sur l'annuaire Active Directory (AD), qui est un référentiel des comptes d'utilisateurs et de nombreux autres types d'objets. On peut faire confiance à  Microsoft pour ne pas répéter la même erreur une deuxième fois : AD est plus évolutif que la SAM. Mais jusqu'à  quel point ? La question mérite d'être posée. Combien d'objets peut-on stocker dans un domaine, quelle est la taille de la base de données, est-elle administrable et quel type de performances peut-on attendre d'Active Directory ? Pour le savoir, notre confrère américain Windows 2000 Magazine a créé une très grande base de données AD, dont ils ont démontré les capacités au Comdex de Las Vegas en novembre 1999 et lors du lancement de Windows 2000 à  San Francisco en février 2000. Cette démonstration de l'évolutivité d'Active Directory montre que la base de données peut contenir 100 millions d'entrées dans un environnement de production réaliste. Avant d'expliquer comment la base de données de démonstration a été construite et de révéler ce que le processus de création a appris sur AD, revenons d'abord sur quelques principes de bases d'AD.

Qui veut un annuaire à  100 millions d’entrée ?

Active Directory est une base de données transactionnelle d’après le modèle de consignation write-ahead, qui utilise la technologie Microsoft ESE97 (Extensible Storage Engine 97). L’Information Store (IS) et le Directory Store de Microsoft Exchange Server 5.5 utilisent eux aussi ESE97. En dépit de quelques petites différences de mise en oeuvre de ESE97 entre Exchange Server et AD, les leçons tirées par les administrateurs Exchange au fil des ans sont une bonne préparation à  la gestion d’AD. Exchange 2000 Server utilise le moteur ESE98, version plus récente de ESE qui supporte le partitionnement de la base de données et le fichier déroulant pour le contenu Internet. Pour le moment, AD n’a pas besoin de partitionner ses bases de données et ne contient que des données destinées à  l’enregistrement, aussi n’a-t-il aucune raison d’utiliser ESE98.
Les entreprises ont accumulé une expérience importante avec ESE. Nous savons qu’il est évolutif, puisque beaucoup de serveurs Exchange Server 5.5 supportent des bases de données supérieures à  100 Go. La base de données peut croître sans compromettre les performances, si les administrateurs équilibrent soigneusement la charge des E/S. Qui plus est, ESE peut traiter les défaillances matérielles grâce à  des récupérations logicielles ou matérielles des données à  partir de ses journaux de transaction. Dans une récupération logicielle, le système échoue pour telle ou telle raison, mais il n’est pas nécessaire de restaurer le fichier de base de données AD à  partir de la sauvegarde. Une récupération matérielle est normalement provoquée par une défaillance de disque grave qui oblige à  restaurer la base de données AD à  partir de la sauvegarde.
La Figure 1 montre l’architecture d’AD. L’accès à  Active Directory se fait par différentes interfaces clients. Les clients tels que Microsoft Outlook 2000 utilisent MAPI (Messaging API), alors que la fonction standard Trouver les utilisateurs de Windows 2000 utilise LDAP (Lightweight Directory Access Protocol). Les programmes tels que ADSIEDIT (outil du Kit de ressources Microsoft Windows 2000 qui permet d’examiner les informations sur les objets AD) utilisent ADSI (Active Directory Service Interfaces) comme principale interface de programmation.
L’agent de service d’annuaire DSA traite les transactions et communique avec ESE par les couches de la base de données. Le DSA et les couches de base de données représentent le schéma et les fonctions d’AD ; ESE est concerné uniquement par la gestion des informations dans la base de données. C’est à  la couche de la base de données qu’il incombe de prendre les données dans le DSA et de les transformer dans un format compris par ESE.
Les fichiers sur disque comprennent notamment ntds.dit (la base de données AD) ; un ensemble de journaux de transactions ; un fichier de contrôle qui enregistre la dernière mémoire tampon enregistrée dans la base de données; et un fichier de base de données temporaire. Ces fichiers sont comparables au fichier dir.edb (la base de données ESE97 utilisée par le magasin d’information de Exchange 5.5), ainsi qu’à  ses journaux de transactions et à  son fichier de contrôle.
La Figure 2 montre certains fichiers que Windows 2000 Magazine a utilisés dans la démonstration d’évolutivité d’AD. Notez la taille de la base de données (ntds.dit), qui contient 100 millions d’objets. Notez aussi que les journaux de transactions sont de 10 Mo, alors que ceux de Exchange sont de 5 Mo. La différence tient à  la taille des enregistrements de la base de données. Exchange utilise un enregistrement de 4 Ko ; AD un enregistrement de 8 Ko, en grande partie parce qu’il contient plus de 4 Ko d’informations pour un compte d’utilisateur moyen. Microsoft aurait pu spécifier une taille d’enregistrement de 4 Ko pour AD, mais avec pour résultat, de nombreux débordements de pages et une structure de base de données interne insuffisante. Avec des enregistrements plus grands, chaque transaction peut saisir davantage de données et Microsoft a donc augmenté la taille du fichier-journal pour économiser des ressources CPU lors de la création de fichiers.

Téléchargez gratuitement cette ressource

Le Guide d’Orchestration du Parcours client

Le Guide d’Orchestration du Parcours client

Au-delà de la clarification des nouveaux concepts de gestion du parcours client, ce guide vous permettra de définir, créer et mettre œuvre une orchestration complète articulée autour des trois volets essentiels au succès de l’expérience client et de l’entreprise.

Tech - Par iTPro.fr - Publié le 24 juin 2010