matthew sporleder wrote:
I'm trying to figure out if I can abstract a database's logical layout
(DIT) from being bound to specific files per 'database' definition,
and I'm not seeing any good tips in the berkeley db tuning docs.
For example:
I have ou=region1,dc=example,dc=com and ou=region2,dc=exmaple,dc=com.
Right now the only options I see of separating these are to define
them in different 'database' sections. I would, however, like to have
them both defined in one database, but allow the actual database files
(dn2id, etc) to be split in terms of size, or other definables.
(usage stats, whatever)
Am I missing something obvious in DB_CONFIG like "max_file_size"?
No, there's no such feature. Nor does it sound like it would be useful,
given what little you've described so far. Even if you allowed a
particular DB file to be split, all of the files would still occupy
space in the single BDB environment cache. In fact, since each DB handle
also consumes cache space, splitting files would consume more resources
than otherwise. Given that we've benchmarked a directory with 150
million entries consuming about a terabyte of disk space, using the
current back-bdb code, getting tens of thousands of operations per
second throughput, I don't see any particular reason to bother with
splitting the files. Perhaps if you explained what real problem you're
trying to solve, it might make a bit more sense.
--
-- Howard Chu
Chief Architect, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc
OpenLDAP Core Team http://www.openldap.org/project/