10.5. コマンドラインを使用した DN キャッシュサイズの設定

ディレクトリーサーバーは entryrdn インデックスを使用して、識別名 (DN) および相対識別名 (RDN) をエントリーに関連付けます。これにより、サーバーは効率的にサブツリーの名前を変更し、エントリーを移動し、moddn 操作を実行できます。サーバーは DN キャッシュを使用して entryrdn インデックスのメモリー内表現をキャッシュし、コストのかかるファイル I/O および変換操作を回避します。

自動チューニング機能を使用しない場合、特にエントリーの名前変更と移動操作で最高のパフォーマンスを得るには、DN キャッシュを、ディレクトリーサーバーがデータベース内のすべての DN をキャッシュできるサイズに設定します。

DN がキャッシュに保存されていない場合、Directory Server は entryrdn.db インデックスデータベースファイルから DN を読み取り、オンディスクフォーマットからインメモリーフォーマットに DN を変換します。キャッシュに保存されている DN により、サーバーはディスク I/O および変換の手順をスキップできます。

手順

  1. 接尾辞とそれに対応するバックエンドを表示します。

    # dsconf -D "cn=Directory Manager" ldap://server.example.com suffix list
    dc=example,dc=com (userroot)

    このコマンドにより、各接尾辞の横にバックエンドデータベースが表示されます。次の手順で、接尾辞のデータベース名が必要です。

  2. DN キャッシュサイズを設定します。

    # dsconf -D "cn=Directory Manager" ldap://server.example.com backend suffix set --dncache-memsize=20971520 userRoot

    このコマンドは、userRoot データベースの DN キャッシュを 20 メガバイトに設定します。

  3. インスタンスを再起動します。

    # dsctl instance_name restart