One word: B+Tree. Hash tables work well if the entire hash table fits
into memory and you know (approximately) what the upper limit on records
is going to be. If you don't, then a B+Tree is the only proven way to
go. (sure, there are plenty of other schemes, some hybrid, some
completely different, but B+Tree's have been long proven so unless you
want to experiment, just use one).
In general I agree that UFS's only major pitfall is the sequential
directory scanning. The reality, though, is that very few programs
actually need to create thousands or millions of files in a single
directory. The biggest one used to be USENET news but that has
shifted into multi-article files and isn't an issue any more. Now
the biggest one is probably squid. Databases are big storage-wise,
but don't usually require lots of files.
-Matt
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message