Directory design 1... ディレクトリ容量の見積もり
オブジェクトの容量
続いて,Active Directoryに登録されているオブジェクトやその属性が占める領域について見てゆくことにする。
Active Directoryの大きなメリットの1つは,ディレクトリの内部を階層構造で管理できるという点であろう。その恩恵を特に受けることになるのは,階層を利用してユーザーやリソースを管理できる管理者であると思われる。しかし,ディレクトリファイルの内部では,各オブジェクトを階層構造で格納しているわけではなく,単にフラットなデータテーブルに格納しているにすぎない。たとえば,Table 1に示すのは,TomというユーザーオブジェクトとRick's Workstaionというコンピュータオブジェクトを格納しているデータテーブルの一部である。この表からもわかるように,このデータテーブルのなかではネームスペースの継承もなければ階層構造もなく,オブジェクトの種類ごとに関連付けられている属性の種類も区別されていない。
Table 1 ユーザーオブジェクトとコンピュータオブジェクトを格納したデータテーブルの一部
Dnt | Cn | Description | Employee ID | Distinguished Name | Object GUID | Operating System |
4711 | Tom | Manager | 12345 | cn=Tom, cn=Users, dc=a, dc=com |
xf7 xe7 x59 xfc x8e xbe xd1 x11 xbf x84 xa5 x70 x00 x8e x75 x29 | − |
4712 | NTRick | Rick's WKS | − | cn=Tom, cn=Ucomputers, dc=a, dc=com |
xb4 x25 x2b xc8 x1d xbd xd1 x11 xbf x80 xd5 xcc x44 xdc xcb x29 | Windows 2000 |
また,ここではオブジェクトの種類がユーザーなのかコンピュータなのかということは問題ではなく,850個以上ある属性のなかのどの属性がいくつ設定されているのか,という点だけが問題となってくる。たとえば,ユーザーオブジェクトに30個の属性があるとしよう。もしユーザーを作成するときに,必須属性のほかに5つのオプション属性に値を設定したならば,必須属性と5つのオプション属性の分だけ,ディスク領域は消費される。最初から属性30個分のディスク容量が消費されるわけではない。
したがって,管理者がオブジェクトを追加するときに入力する属性が多ければ多いほど,そして会社名などの文字列属性については入力する文字数が長ければ長いほど,ディレクトリファイルの容量は大きくなる。このような容量の変化はシステム側で動的に調整されるため,管理者が明示的に容量を調整する必要はない。しかし,各属性ごとに何バイトの容量が変動するのか,あるいは文字列属性については何文字ごとに何バイトの容量が変動するのかを知っておくことで,管理者はトータルなディレクトリ容量を調整できることになる。
それでは,具体的にオブジェクトや属性のデータ容量を見てみることにしよう。Table 2は,必須属性だけを設定して作成したオブジェクトのデータ容量である。
Table 2 オブジェクトのデータサイズ
オブジェクトの種別 | 1件あたりのデータサイズ |
セキュリティプリンシパル | 3600バイト |
非セキュリティプリンシパル | 1100バイト |
アクセス権限の設定対象となる,ユーザー,グループ,コンピュータなどのオブジェクトは,「セキュリティプリンシパル」と呼ばれる。セキュリティプリンシパルは,1件あたりのサイズが最低3600バイトとなる(グループにユーザーなどを登録してゆくと,それにつれてサイズは増大する)。
これに対して,オブジェクトを格納するコンテナであるOrganizational Unit(OU:組織単位)やプリンタオブジェクトなどは,「非セキュリティプリンシパル」と呼ばれる。非セキュリティプリンシパルは,1件あたり1100バイトとなる。
Directory design 4/18 |