[news.software.nntp] Netnews redesign

nelson@sun.soe.clarkson.edu (Russ Nelson) (05/08/91)

   Is there a netnews development project anywhere with which I could
   correspond on this type of design issue?

Not that I know of.  But I've proposed a similar idea to yours.  Hide
the database behind NNTP.  The draft for a revised NNTP even has a
"grep" call, so you couldn't need to do that by hand...

Expire is the problem, as always.  I've thought about doing it using "buckets".
Each bucket would be labelled "expire in 1 days", "expire in 2 days",
"expire in 3 days", etc.  The problem with that is that you'd really like
to expire as the disk gets full, rather than trying to express things
in terms of days.

Perhaps a better algorithm would be to keep articles in "chunks" with
some maximum size, say 100K.  These chunks would be queued up for
expiration.  Each chunk would have a "velocity" parameter, that
dictated its speed through the queue.  talk.* could have a velocity of
20, comp.* could have a velocity of 10, and comp.archives a velocity
of 0 (Hi, Ed!).  When it came time to find space for new news, the
chunk with the greatest displacement would be deleted, and its database
entries removed.

An algorithm would be needed to balance the chunk size versus its displacement.
Once an chunk has reached a certain displacement, it shouldn't be added to.
Perhaps 10% of the highest displacement?

--
--russ <nelson@clutx.clarkson.edu> I'm proud to be a humble Quaker.
It's better to get mugged than to live a life of fear -- Freeman Dyson
I joined the League for Programming Freedom, and I hope you'll join too.