Slapd Performance With Indexing

Test Background

Creating The Indexes

The following list shows examples for the from a 6h logging statistics from one BDII instance at CERN:

Occurence Filter Example for Filter
13805 (&(objectClass=GlueCluster)(GlueClusterUniqueID=Some_host)) (&(objectClass=GlueCluster)(GlueClusterUniqueID=ce108.cern.ch))
5505 (GlueSEUniqueID=Some_host) (GlueSEUniqueID=t2-dpm-01.na.infn.it)
5310 (&(GlueServiceURI=*Some_host*)(GlueServiceType=srm_v1)) (&(GlueServiceURI=*srm.grid.sara.nl*)(GlueServiceType=srm_v1))
2503 (&(objectClass=GlueSA)(GlueSAAccessControlBaseRule=Some_VO)) (&(objectClass=GlueSA)(GlueSAAccessControlBaseRule=lhcb))
2047 (&(objectClass=GlueCE)(|(GlueCEAccessControlBaseRule=VO:Some_VO)(GlueCEAccessControlBaseRule=Some_DN))) (&(objectClass=GlueCE)(|(GlueCEAccessControlBaseRule=VO:alice)(GlueCEAccessControlBaseRule=/C=CH/O=CERN/OU=GRID/CN=Latchezar Betev 7928)))
1396 (&(&(objectClass=GlueVOView)(GlueChunkKey=GlueCEUniqueID=Some_CE_unique_ID)(GlueCEAccessControlBaseRule=VO:Some_VO))) (&(&(objectClass=GlueVOView)(GlueChunkKey=GlueCEUniqueID=ce114.cern.ch:2119/jobmanager-lcglsf-grid_2nh_lhcb)(GlueCEAccessControlBaseRule=VO:dteam)))
1383 (|(objectClass=GlueCESEBindGroup)(objectClass=GlueCESEBind)) (|(objectClass=GlueCESEBindGroup)(objectClass=GlueCESEBind))
1243 (&(objectClass=GlueSubCluster)) (&(objectClass=GlueSubCluster))
1047 (&(GlueServiceType=*)(GlueServiceAccessControlRule=Some_VO)) (&(GlueServiceType=*)(GlueServiceAccessControlRule=dteam))
571 (GlueCEUniqueID=Some_CE_unique_ID) (GlueCEUniqueID=ares02.cyf-kr.edu.pl:2119/jobmanager-lcgpbs-alice)

This list was generated by a script, provided by Valentin Vidic and attached (see below), which parses the slapd log file.

From analysis of the above list the following indexes are requred:

ObjectClass
GlueSEUniqueID
GlueCEUniqueID
GlueSAAccessControlBaseRule
GlueCESEBindCEUniqueID
GlueSubClusterUniqueID
GlueCEAccessControlBaseRule

Configuring Indexes for the slapd

Indexes are configuration for the slapd server by appending the indexes to the slapd.conf file.
...
database        ldbm
cachesize       30000
dbcachesize     30000000
dbnosync
suffix          "o=grid"
rootdn          "o=grid"
rootpw          secret
defaultaccess   read
directory       /opt/bdii/var/2171

index ObjectClass eq
index GlueSEUniqueID eq
index GlueCEUniqueID eq
index GlueSAAccessControlBaseRule eq
index GlueCESEBindCEUniqueID eq
index GlueSubClusterUniqueID eq
index GlueCEAccessControlBaseRule eq

The index files are created by the running the command slapdindex and the follwoing files are created in the database directory:

-rw-------    1 root     root      1069056 Mar 22 17:01 objectClass.dbb
-rw-------    1 root     root       151552 Mar 21 16:16 GlueSEUniqueID.dbb
-rw-------    1 root     root       151552 Mar 21 16:16 GlueCEUniqueID.dbb
-rw-------    1 root     root        61440 Mar 21 16:16 GlueSAAccessControlBaseRule.dbb
-rw-------    1 root     root       151552 Mar 21 10:28 GlueCESEBindCEUniqueID.dbb
-rw-------    1 root     root        24576 Mar 21 16:16 GlueSubClusterUniqueID.dbb
-rw-------    1 root     root        61440 Mar 21 16:16 GlueCEAccessControlBaseRule.dbb

Test Environment

OpenLDAP server (slapd V 2.0.27 ) installed on a Dual Intel(R) Xeon(TM) CPU 2.40GHz with 1GB of RAM running Scientific Linux 3. The size of the LDAP database is 20MB.

Test Description

The slapd was configured with indexing and the query filter (&(objectClass=GlueCluster)(GlueClusterUniqueID=ce108.cern.ch)) was used.

Test Results

  • non-indexed DB
  • non-indexed DB

TOP1_requesttime.png

Topic attachments
I Attachment History Action Size Date WhoSorted ascending Comment
Unknown file formatext TOP1_data r1 manage 0.7 K 2008-02-26 - 14:18 LaurenceField  
PNGpng TOP1_requesttime.png r1 manage 5.9 K 2008-02-26 - 14:18 LaurenceField  
Unknown file formatext run_analyseLog r1 manage 1.2 K 2008-02-26 - 14:17 LaurenceField  
Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r2 - 2008-02-26 - LaurenceField
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    EGEE All webs login

This site is powered by the TWiki collaboration platform Powered by Perl This site is powered by the TWiki collaboration platformCopyright & by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Ask a support question or Send feedback