Databases are good at storing data.  With proper indexing, a few  
million rows is nothing.  I'd store tracks listened to.  Make the  
model simpler, speed user creation, and odds are most people are going  
to listen to less than 25K distinct songs so it'll require less rows  
too.

---
Barney Boisvert
bboisv...@gmail.com
http://www.barneyb.com

On Jan 12, 2009, at 11:37 PM, Mike Soultanian <msoul...@csulb.edu>  
wrote:

> Hey Everyone,
> I have a project and I'm trying to figure out the best way to go about
> it.  What I want to do is keep track of what songs a user has listened
> to and what songs they haven't.  The first thing that comes to mind  
> is a
> table with song IDs and a table with user IDs and a join table between
> the two that keeps track of what song a user has listened to.  With
> 50,000 songs, that could be a lot of records in the join table.  Is
> there a more efficient way to tackle this kind of problem?  I don't
> think I'll have that many users, but even if I had ten users, that  
> table
> could be pretty big.
>
> I'm trying to think if there are any tricks such as whether to store  
> if
> a user has listened to a track or store if they haven't.  I plan to  
> have
> a button called "mark all as listened", which could empty the join  
> table
> of any records pertaining to that user if I was storing the tracks  
> they
> didn't listen to.  So the join table would initially start out very
> large for a user and then drop down... that's just one thought I had.
>
> If anyone has any tricks, I'd appreciate your advise!
>
> Thanks,
> Mike
>
> 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Adobe® ColdFusion® 8 software 8 is the most important and dramatic release to 
date
Get the Free Trial
http://ad.doubleclick.net/clk;207172674;29440083;f

Archive: 
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:317830
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4

Reply via email to