Die Größe der Active Directory Datenbank (Teil 1) 10. Juli 2010
Ab und zu kam in den einschlägigen Foren die Frage auf, wie groß wird denn die Active Directory Datenbank bei einer bestimmten Anzahl von Benutzern. Wenn man auf den Microsoft Technet Seiten stöbert, wird man auch hier keine definitive Aussage finden. Ein Grund dafür ist, daß natürlich keine Vorlage oder auch Tabelle die individuellen Vorgaben jedes einzelnen Netzwerkes bzw. Verzeichnisdienstes beachten kann. Wer zum Beispiel intensiv die einzelnen Attribute eines Benutzerobjektes pflegt, der muss logischerweise im Umkehrschluss auch mit einer größeren Active Directory Datenbank rechnen.
Ich möchte in der folgenden Artikelserie dem Administrator eine Übersicht geben, an der man ungefähr die zu erwartende Größe der Active Directory Datenbank abschätzen kann.
Teil Eins der Artikelserie betrachtet das Anlegen von Benutzerobjekten. Um hier sehr nahe an die tatsächliche Größe eines einzelnen Benutzerobjekts zu kommen, habe ich in 100.000er Schritten durch ein Powershellskript Benutzer angelegt. Meine Testumgebung stellt sich folgendermaßen dar:
Windows 2008 R2 Domänencontroller
Domänenname: spielwiese.de
Gefüllte Attribute beim Anlegen:
samAccountName: Gefüllt von 000000 bis 999999
UPN: Gefüllt von 000000@spielwiese.de bis 999999@spielwiese.de
name: 000000
distinguishedName: cn=000000,ou=test,dc=spielwiese,dc=de
Nach dem Intervall von 100.000 Benutzerobjekten hat mein Powershellskript die Größe der AD Datenbank gemessen. Anschließend wurde eine Defragmentierung der AD Datenbank durchgeführt und die Größe der Datenbank erneut gemessen.
| Useranzahl | Größe AD Datenbank in Bytes | Differenz | Größe User in KB |
| 100000 | 471875584 | 452984832 | 4,42368 |
| 200000 | 1050689536 | 578813952 | 5,65248 |
| 300000 | 1635311616 | 584622080 | 5,7092 |
| 400000 | 2223710208 | 588398592 | 5,74608 |
| 500000 | 2809954304 | 586244096 | 5,72504 |
| 600000 | 3397869568 | 587915264 | 5,74136 |
| 700000 | 3979788288 | 581918720 | 5,6828 |
| 800000 | 4572692480 | 592904192 | 5,79008 |
| 900000 | 5134057472 | 561364992 | 5,48208 |
| 1000000 | 5716475904 | 582418432 | 5,68768 |
| Useranzahl | Größe AD Datenbank in Bytes | Differenz | Größe User in KB |
| 100000 | 606093312 | 587202560 | 5,7344 |
| 200000 | 1182482432 | 576389120 | 5,6288 |
| 300000 | 1770242048 | 587759616 | 5,73984 |
| 400000 | 2360262656 | 590020608 | 5,76192 |
| 500000 | 2360262656 | 574914560 | 5,6144 |
| 600000 | 3546038272 | 610861056 | 5,96544 |
| 700000 | 4111204352 | 565166080 | 5,5192 |
| 800000 | 4716191744 | 604987392 | 5,90808 |
| 900000 | 5300084736 | 583892992 | 5,70208 |
| 1000000 | 5894103040 | 594018304 | 5,80096 |
Wie man in der zweiten Tabelle erkennen kann, sind die Messergebnisse wesentlich linearer als bei der ersten Messung. Die Ergebnisse sind darauf zurückzuführen, daß bei der ersten Messung natürlich noch viele Transaktionen nicht in die Datenbank geschrieben waren. Bei der offline Komprimierung werden diese natürlich mit in die Datenbank geschrieben. Deshalb ist die zweite Messung maßgebend. Abschließend kann man also sagen, daß die Größe eines Benutzerobjekts in der Active Directory Datenbank ungefähr 5,74 KB beträgt.
Im nächsten Artikel werde ich die Auswirkungen von Attributen auf die Größe der AD Datenbank betrachten.


