[OT] large db question about no joins

Daniel Fetchinson fetchinson at googlemail.com
Fri Apr 17 20:36:44 EDT 2009


>> In an relational database setting you would have a table for artists,
>> a table for cd's and a table for songs and a table for comments where
>> people can comment on songs. All of this with obvious foreign keys.
>> Now you want to display on your website the total number of cd's, the
>> total number of songs and the total number of comments because that
>> looks very cool on top of every page: 1242342 cd's and 134242342342
>> songs and 284284728347284728 comments!
>>
>> Okay, so you need to issue a query with joins in your relational db.
>> Or in another query, you want to select all comments of an artist,
>> meaning all comments that were comments on a song belonging to cd's of
>> a given artist. This would also involve joins.
>>
>> How would I do these queries if I can't have joins or in other words
>> how would I lay out my data storage?
>>
>> Thanks by the way for your help and replies,
>> Daniel
>>
>
> What actually is happening here is that feature x which is usually in an
> abstraction layer (like a RDBM) is not available to you. Which means you
> have to write code which does the same but on your side of the code.
>
> I played a bit around with the GAE some time ago and designed the
> storage of all data in an sort of EAV model
> (http://en.wikipedia.org/wiki/Entity-Attribute-Value_model)
> The abstraction layer had all my meta code, counting stuff up was a
> matter of creating a list of id's from one section and with that list
> selecting the appropriate records on the other section, then count up
> the number of results or use the result again, it is very likely you
> have to do quite a lot of queries before you get the result.
>
> So in other words, just lay out the data which makes the most sense to
> you, the pain of recreating SQL like logic is there no matter what
> layout you choose.

Thanks, this wikipedia entry was actually very useful as well as your
other comments.

Thanks again,
Daniel



-- 
Psss, psss, put it down! - http://www.cafepress.com/putitdown



More information about the Python-list mailing list