Deutsch   English   Français   Italiano  
<20240910.223544.bd3c64d8@mixmin.net>

View for Bookmarking (what is this?)
Look up another Usenet article

Date: Tue, 10 Sep 2024 22:35:44 +0100
Content-Transfer-Encoding: 7bit
From: D <noreply@mixmin.net>
References: <database-20240909114248@ram.dialup.fu-berlin.de>
Subject: Re: Post DB
Message-Id: <20240910.223544.bd3c64d8@mixmin.net>
Newsgroups: news.software.readers
Path: ...!weretis.net!feeder8.news.weretis.net!news.mixmin.net!news2.arglkargh.de!alphared!sewer!news.dizum.net!not-for-mail
Organization: dizum.com - The Internet Problem Provider
X-Abuse: abuse@dizum.com
Injection-Info: sewer.dizum.com - 2001::1/128
Bytes: 5840
Lines: 109

On 9 Sep 2024 10:44:36 GMT, ram@zedat.fu-berlin.de (Stefan Ram) wrote:
>  I'm not 100% sure I'm barking up the right tree (newsgroup) here,
>  but whatever.
>  So, yesterday I was chewing the fat about how to whip up a database
>  for posts retrieved from newsservers.
>  I'm picturing some program that pulls newsgroups from newsservers
>  and dumps them into a database.
>  In my mind's eye, a post looks something like this, give or take:
>Path: A
>Message-ID: B
>Body: C
>  . But if you snag the same post from a different server, it might
>  look like this:
>Message-ID: B
>Path: D
>Body: C
>  . At first blush, you'd end up with the same body stored multiple
>  times in the database. Talk about a waste of space!
>  To trim the fat, we could rejigger these posts so all the variable
>  stuff is up front:
>Path: A
>Message-ID: B
>Body: C
>  and
>Path: D
>Message-ID: B
>Body: C
>  Now the tail end of both posts is identical, so we can toss that
>  in a separate table at position 0.
>  The posts themselves would then just contain the different parts
>  and a pointer to the shared bit that's only stored once:
>Path: A
>Rest: 0
>Path: D
>Rest: 0
>0:
>Message-ID: B
>Body: C
>  . This way, you could store the same post from multiple newsservers
>  without eating up your hard drive space like it's In-N-Out fries.

p.s.  this feature of 40tude dialog might possibly be useful...

40tude Dialog > Help [F1] > The "Copy/Move selected articles" Window:
>...
>How can I create virtual groups?
>You can't. There is nothing like virtual groups in Dialog. However,
>you can join the articles from two groups into one in Dialog. This
>includes joining the articles from the same newsgroup but different
>servers into one group (in the perspective of Dialog) or folder,
>e.g. to fill missing parts of multipart postings. To do this, you
>can manually Copy/Move articles from one group to another or you
>can use an action rule to automate this. 

40tude Dialog > Help [F1] > Index > Scoring syntax:
>...
>Copy and Move actions
>There is an extended syntax for copy and move action. Say you want to move
>all emails from a mailing list to a separate folder. You can use:
> [email.*]
> !move(%X-Mailing-List%) Header {^(X-Mailing-List:)}
>The section identifier here says that the following rule should be applied
>to emails only.
>The !move action itself looks for a X-Mailing-List: header in the message,
>but instead of copying the message to a folder with a fixed name, it is
>copied to a folder named after the value of the X-Mailing-List header
>field itself. Say, e.g. you receive a message which has a "X-Mailing-List:
>speedboats@yahoogroups.com" header, then this message is moved to the
>"speedboats@yahoogroups.com" folder. By now, you might have noticed that
>this is a very powerful rule for organizing mailing list into folders.
>A variation of this is:
> [email.*]
> !move(@%X-Mailing-List%) Header {^(X-Mailing-List:)}
>Notice the additional "@" in the target folder expression. If this @ is
>present, the value of the header field is simply searched for the
>character @ and only the text before the first found @ is used as the
>target folder. Again, for a message which has a "X-Mailing-List:
>speedboats@yahoogroups.com" header field, the message would be moved to the
>"speedboats" folder, instead of the "speedboats@yahoogroups.com" folder.
>Almost virtual groups
>There are no virtual groups in Dialog, however you can simply copy or move
>articles from one group to another manually or by using an action rule:
> [a.binary.group]
> !move(a.binary.group;NewsserverOne) bytes %>0
>All previous examples used a folder as the target of the copy/move
>operation. This rule uses a newsgroup as the target. Note that the name of
>the target group and the name of the newsserver where this group is from
>is separated by a semicolon.
>Say, you are using two newsservers named "NewsserverOne" and
>"NewsserverTwo". Both newsservers have the group "a.binary.group", but
>while most of the messages are the same in this group on the two servers,
>there are some that are not available on the other server.
>The first line in the preceding sample makes sure that the following rule
>is only applied to the "a.binary.group" newsgroup.
>The rule itself simply says to move all articles (since the condition
>"bytes %>0" is always met) to the group a.binary.group of NewsserverOne.
>If you retrieve message headers for this group from server NewsserverOne,
>the rule is ignored, since all articles go to the correct group anyway. If
>you retrieve message headers from NewsserverTwo for this group though,
>they will not show up in "a.binary.group (NewsserverTwo)", but in
>"a.binary.group (NewsserverOne)".
>The result is that you joined messages from the same group, but different
>newsservers into one group in Dialog. This is especially useful for binary
>groups to fill missing multipart postings.
[end quoted plain text]

see also: news:de.comm.software.40tude-dialog for many detailed articles
(45160 total, from 8/18/2003 to 8/19/2024, on news.blueworldhosting.com)
about scoring, actions, scripting, etc.  this tech group is still active