Re: A question for Mr. Celko

From: Marshall Spight <mspight_at_dnai.com>
Date: Sun, 18 Jul 2004 16:13:24 GMT
Message-ID: <EkxKc.111658$%_6.22978_at_attbi_s01>


"Jan Hidders" <jan.hidders_at_REMOVETHIS.pandora.be> wrote in message news:pan.2004.07.18.10.12.22.935425_at_REMOVETHIS.pandora.be...
> On Sun, 18 Jul 2004 00:12:27 +0000, Marshall Spight wrote:
> >
> > I hypothesize that you can have list-valued-attributes inline (as is
> > already often the case with strings) and relation-valued attributes
> > implemented as separate relations, and still keep things quite simple.
> > I'm still investigating this, though.
>
> So what happens for example if the list is really big and I do a join
> between the list and the relation in the relation-valued attribute. Will
> your query optimizer recoginize that situation and choose the right join
> algorithm?

I'm still unclear on implemenation techniques involving mixing lists and relations. (Also, I'm not sure what list you mean; did you mean "*a* list" instead of "*the* list"? Is the list an attribute?) Can I rewrite your question to use two relation-valued attributes? If so, I think the answer is yes.

> Do you know how hard it is to decide whether a certain list
> operation is actually a natural join?

Hmmm. Maybe what you're asking me is specific to lists after all.

The list-as-relation question is a hard one. For most lists, the best implementation is an array, but this doesn't make the situation very nice when you want to treat the list a relation on (position, element) and do queries on it.

Marshall Received on Sun Jul 18 2004 - 18:13:24 CEST

Original text of this message