Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re: Multiple Databases in Catalyst

by sundialsvc4 (Abbot)
on May 11, 2013 at 17:18 UTC ( #1033139=note: print w/ replies, xml ) Need Help??


in reply to Multiple Databases in Catalyst

I personally think that this would be very hard to pull off.   (If your web site goes viral and suddenly has 2.5 million users, it’s gonna be really hard to pull off.)   Your proposed solution is not only serious over-kill, in my humble, but it does not scale up.   At all.

Pragmatically speaking, you need to include a user_id column in every table, then index that column, and then design the data-model layer (perhaps using some kind of base class?) to be certain that user_id is always part of the requisite criteria that is always used for those tables and/or views.   A base-class could “elegantly” ensure that user_id is always part of any where clause, and always inserted as a non-NULL value in inserts.


Comment on Re: Multiple Databases in Catalyst
Re^2: Multiple Databases in Catalyst
by code-ninja (Scribe) on May 12, 2013 at 03:18 UTC
    Yea, I asked the same doubt on the Catalyst's IRC and they were all saying similar things. My model doesn't scale well: <quote>S'pose you have a million users one day and you need to change some table, then you'll have to make changes that would become a nightmare</quote> someone said that and I couldn't agree more... anyways, back to one schema with many tables. Its easier that way. Thanks for the help monk(s) :).

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1033139]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (13)
As of 2014-09-22 19:02 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (198 votes), past polls