Tom Collins wrote: > On Sep 20, 2007, at 12:56 PM, Rick Widmer wrote: >> If I remember right, speed was the reason for separate tables, but >> testing showed it was not faster. I think the single table works >> better because all your mail users are accessing the same table, and >> its indexes so they stay loaded all the time. If you use separate >> tables it is always thrashing the cache as different files need to be >> accessed. > > If we were really looking for speed, we could move to a "ng" (next > generation) table format that was more relational. Provide tools to > migrate from the old to the new for those people who only access the > data through vpopmail's APIs. Continue to support the old method for > people who have home-grown apps that access the data. > > The domains should be in a table of their own, and the users table > should index the domains table. Having an index in the users table on > an int (and the resulting size savings) would be measurable. > > The biggest change would be updating the selects and inserts in the > code. Not a huge change -- just a join between the tables. > > Something to consider, and perhaps discuss further (on this list or > vpopmail-devel).
I understand what you're proposing, but I would suggest that it would add complexity for little gain. Of course, that would need benchmarking to establish which is the faster method. If someone can give me a large dataset, I'm happy to crunch some numbers. R.