Topic: Million Dollar Question?
I've been knocking on the door of this question for the last two weeks and no one seems to open?
Two weeks ago, I posted http://railsforum.com/viewtopic.php?id=3521 on the March 1st and received 80+ views and ZERO responses.
Obviously, I'm a newbie and I do very much appreciate the character and quality of those I've meet through RonR, but why isn't this the "Million Dollar Question"?
After all, doesn't everyone realize that the days of running Win32 desktop applications is going to fade into the sunset with multi-user web applications taking their place? Look at QuickBooks now and many others.
The key to entering this market and prospering is to learn the 'bones' of handling many distinct user databases INSIDE one monolithic database (such as Basecamp).
If I can get some help here, I'd love to create a new category of this forum called "Splitting the Monolith".
I see on page 313 of Dave Thomas's AWD where he explains "Compositing Data with Aggregations". I've got to believe this is the heart of the solution. Building upon this idea, I frame my question. (What throws me in his explanation is that he puts all his code on one "Aggregation.rb" file).
I use the term, "project" as the distinct sub-data set for each user's universe. The PROJECT table will be the top hierchical table (Integer key) in this monolithic database with every other table in the database having (some type of) FK relationship. Even though we've been taught in the many RonR books that we can transcend through any level of parenting, my 'gut' feeling is that this might be very slow. Thus, I'm thinking that 'Aggregations' might speed things up by forming 'compound fields" with the two integers (Project_id and AnyTable_id). Then when a user wanted to perform a Tablename.Find(:first) they could simply pass the session[project_id] at this to find the first row in this table for this project.
I've also contemplated a 'front end' design to allow the user to login and securely access their PROJECT(s).
If there's anyone out there that is trying to accomplish this type of endeavor, I would be grateful for any reply.