LDAP: Using parallel-update for concurrent multiple updates


For applying a small number of changes, ldapmodify is satisfactory. For a large number of changes, parallel-update has the capability of applying multiple changes simultaneously using an operator-provided number of threads. The following example uses 1024 threads to apply 1,000,000 changes in 156 seconds:

parallel-update --hostname ldap.example.com \
                --port 389                  \
                --bindDN cn=RootDN          \
                --bindPassword password     \
                --rejectFile rejects.ldif   \
                --numThreads 1024           \
                --ldifFile changes.ldif
 Attempts Successes   Rejects   ToRetry  AvgOps/S  RctOps/S  AvgDurMS  RctDurMS
--------- --------- --------- --------- --------- --------- --------- ---------
     2421      2421         0         0       483       483        11        11
    27565     27565         0         0      2752      5018        11        11
    61828     61828         0         0      4115      6838        10         9
    92657     92657         0         0      4625      6153         9         9
   127157    127157         0         0      5077      6886        10        10
   161335    161335         0         0      5368      6821         9         7
   193517    193517         0         0      5519      6423         9         9
   221584    221584         0         0      5529      5602        12        28
   253812    253812         0         0      5629      6432        12        11
   288367    288367         0         0      5756      6895        11         8
   321482    321482         0         0      5834      6609        11        11
   354634    354634         0         0      5899      6618        11         8
   392753    392753         0         0      6030      7607        11         8
   420788    420788         0         0      5999      5596        11        17
   455094    455094         0         0      6056      6843        11        11
   490436    490436         0         0      6118      7054        11         8
   524579    524579         0         0      6159      6817        11         7
   556483    556483         0         0      6171      6366        11         9
   588915    588915         0         0      6187      6473        10         8
   623031    623031         0         0      6218      6809        10        11
   655533    655533         0         0      6231      6490        11        19
   688598    688598         0         0      6247      6599        11         8
   724066    724066         0         0      6284      7079        11         9
   759697    759697         0         0      6318      7110        11         8
   794089    794089         0         0      6340      6864        10         8
   829215    829215         0         0      6366      7012        10        11
   861592    861592         0         0      6369      6461        11        14
   895619    895619         0         0      6384      6791        10         7
   930062    930062         0         0      6401      6872        10         9
   962579    962579         0         0      6404      6493        10        14
   995666    995666         0         0      6411      6605        10         7
Reached the end of the LDIF file
  1000004   1000004         0         0      6384      3298        10        12
All processing complete
Attempted 1000004 operations in 156 seconds

This tool is superior to using bulkmodify because parallel-update can be used to modify any attribute. bulkmodify cannot be used to modify dn, cn, and other attributes. bulkmodify also has some important limitations where multi-valued attributes are involved. bulkmodify does not accept an LDIF file as input. These limitations reduce the effectiveness and usability of bulkmodify … use parallel-update instead.

About Terry Gardner

Terry Gardner was a leading directory services architect with experience with many large scale directory services installations and messaging server installations, and was a Subject Matter Expert in the field of Directory Services and Solaris (operating system) performance. Mr. Gardner also participated in the open-source software community. Mr. Gardner passed away in December, 2013.
This entry was posted in LDAP, UnboundID and tagged , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s