There is also the issue of when do you need database-like
functions, such as a query language, locking, or management
of lot of data with presorted indices. The Berkeley DB site
at sleepycat has an interesting What is/is not Berkeley DB? section.
The
is not page may be useful, because while BDB is a
hugely powerful system that can handle terabytes of data,
it is not SQL or relational, though you could build a
database engine on top of it. This is a pretty interesting page,
and it might make you start thinking about extending the
life of your system..
Also I would expect the <2GB limitation on machines that
only use 32 bit addressing for your plain old flat file,
but this may not apply to BDB.. their page says
Because both keys and values can be up to four gigabytes in length, a single record can store images, audio streams, or other
large data values. Large values are not treated specially in Berkeley DB. They are simply broken into page-sized chunks, and
reassembled on demand when the application needs them.
Now looking at Database Limits
it looks like 2GB per database file would be correct for BDB
on a 32 bit filesystem machine.
Actually now I started wanting to read it from the beginning
and maybe you will too. Hint, first page mentions flat
files and structured data!