6.4. 部分文字列インデックスでの検索キーの長さの変更


デフォルトでは、部分文字列インデックスの検索キーの長さは 3 文字以上にする必要があります。たとえば、Directory Server は文字列 abc を検索キーとしてインデックスに追加しますが、ab* は追加しません。ただし、特に多くのワイルドカード文字を含む検索のパフォーマンスを向上させるために、検索キーの長さを短くすることができます。これにより、インデックス内の検索キーの数が増加します。

Directory Server には、検索キーに必要な最小文字数を変更する 3 つの属性があります。

  • nsSubStrBegin: 検索キーの先頭 (ワイルドカード文字の前) の最小文字数を設定します。以下に例を示します。
abc*
Copy to Clipboard Toggle word wrap
  • nsSubStrMiddle: 検索キーのワイルドカード文字間の最小文字数を設定します。以下に例を示します。
*abc*
Copy to Clipboard Toggle word wrap
  • nsSubStrEnd: ワイルドカード文字の後の検索キーの末尾の文字数を設定します。以下に例を示します。
*xyz
Copy to Clipboard Toggle word wrap

6.4.1. コマンドラインを使用して部分文字列インデックスの検索キーの長さを変更する

属性インデックスに新しい検索キーの長さを設定することで、検索速度を向上させることができます。

手順

  1. 新しい検索キーの長さを設定するには、extensibleObject オブジェクトクラスを追加してから、nsSubStrBeginnsSubStrEnd、または nsSubStrMiddle 属性をエントリーに追加します。以下に例を示します。

    # ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x
    
    dn: <attribute_name>,cn=index,cn=<database_name>,cn=ldbm database,cn=plugins,cn=config
    changetype: modify
    add: objectclass
    objectclass: extensibleObject
    -
    add: nsSubStrBegin
    nsSubStrBegin: 2
    -
    add: nsSubStrMiddle
    nsSubStrMiddle: 2
    -
    add: nsSubStrEnd
    nsSubStrEnd: 2
    Copy to Clipboard Toggle word wrap
  2. 新しい設定を適用するには、インデックスを再作成します。たとえば、Directory Server インスタンスの実行中に、次のコマンドを使用して、指定した属性のインデックスを再作成します。

    # dsconf <instance_name> backend index reindex --attr <attribute_name> <database_name>
    Copy to Clipboard Toggle word wrap

検証

  • cn など、検索キーの長さを変更する属性を選択します。
  • cn インデックスをダンプします。

    # dbscan -f /var/lib/dirsrv/slapd-<instance_name>/db/database/cn.db > /tmp/default_len
    Copy to Clipboard Toggle word wrap
  • コマンドラインを使用して部分文字列インデックスの検索キーの長さを変更する の説明に従って、新しい検索キーの長さを設定します。
  • インスタンスを停止して、ディスク上のデータベースを同期します。

    # dsctl <instance_name> stop
    Copy to Clipboard Toggle word wrap
  • cn インデックスをダンプします。

    # dbscan -f /var/lib/dirsrv/slapd-<instance_name>/db/database/cn.db > /tmp/len_2
    Copy to Clipboard Toggle word wrap
  • len_2default_len ファイルを比較します。

    # diff /tmp/len_2 /tmp/default_len
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat