durusmail: durus-users: Million-instance limit
Million-instance limit
2005-01-06
2005-01-06
2005-01-06
2005-01-06
Million-instance limit
David Binger
2005-01-06
On Jan 6, 2005, at 2:48 PM, A.M. Kuchling wrote:

> The README and web page both include the following text:
>
>       Durus is best suited to collections of less than a
>       million instances with relatively stable state.
>
> Where does the figure of around a million come from?  Is it just
> pulled from the air, or does it stem from FileStorage having an
> in-memory dictionary mapping OIDs to file positions?


Almost thin air.  We haven't tested beyond that range.

The FileStorage does build an in-memory dictionary
mapping OIDS to file positions, and that starts to use a significant
amount of RAM eventually.  At a million objects this is no big deal,
but it might start to hurt at 100 million or a billion.

Also, the index is constructed when you start the server by seeking
through the records of the durus file.  The more objects you have, the
longer this takes.  If you double the number of objects, you probably
double the startup time (for the FileStorage).  The limit depends on
your
tolerance for startup delay and the speed of your system.

The storage file format puts some limits on the size of transaction
components
and on the oids and tids run out at 2^64.
The details of that are given in FileStorage.__doc__.

> I'm storing a simulation model.  Converting our largest model results
> in just over 100,000 objects, so that's already 10% of the way to the
> limit.  Toss in a few extra copies of the model for backups,
> versioning, or experimentation, and I'll probably reach the
> million-object mark fairly quickly.  Should I be worried?  Should I
> start thinking about how to make FileStorage more memory-efficient?

I would not worry.  If you want to be more confident, an experiment
might
help.  The MEMS Exchange servers run very nicely with something like
350,000
Persistent instances.  If it were me, I'd buy faster/bigger io/memory
before thinking about anything fancier than FileStorage.




reply