There were some useful replies to this other, similar thread, also posted by an Andy ;-)
http://groups.google.com/group/google-appengine-python/browse_thread/thread/80a44f96c623c964 On Jan 18, 3:51 pm, "Nick Johnson (Google)" <[email protected]> wrote: > Hi Andy, > > On Mon, Jan 4, 2010 at 8:08 PM, Andy <[email protected]> wrote: > > I'm new to sharding and am a little stuck on how to implement the toy > > problem below. Basically I have a many-to-one relationship between a > > Company and Employees, and I want shards which are partitioned > > according to company name. My naive approach is to replicate and > > rename the tables. > > > (1) Is there a better approach? > > (2) How do I switch context effectively to use the correct > > my request handlers? > > Why do you want to shard your tables at all? > > -Nick Johnson > > > > > > > > > Thanks! > > Andy > > > # (from my models.py) > > # # I start with these two models, then shard by company > > # class Company(db.Model): > > # name=db.StringProperty(required=True) > > # > > # class Employee(db.Model): > > # lastname=db.StringProperty(required=True) > > # company=db.ReferenceProperty(Company, > > collection_name='employees') > > > # Company 'Foo' and it's employees > > class Company_Foo(db.Model): > > name=db.StringProperty(required=True) > > > class Employee_Foo(db.Model): > > lastname=db.StringProperty(required=True) > > company=db.ReferenceProperty(Company_Foo, > > collection_name='employees') > > > # company 'Bar' and it's employees > > class Company_Bar(db.Model): > > name=db.StringProperty(required=True) > > > class Employee_Bar(db.Model): > > lastname=db.StringProperty(required=True) > > company=db.ReferenceProperty(Company_Bar, > > collection_name='employees') > > > # (from my handlers.py) > > # other imports here > > from models import * # potentially hundreds of model shards!? > > > def MyHandler(webpp.RequestHandler): > > def post(self): > > company_id=get_from_request(self) > > if company_id == 'Foo': > > my_emp=Employee_Foo.gql(...) > > else: > > my_emp=Employee_Bar.gql(...) > > > -- > > You received this message because you are subscribed to the Google Groups > > "Google App Engine" group. > > To post to this group, send email to [email protected]. > > To unsubscribe from this group, send email to > > [email protected]<google-appengine%2Bunsubscrib > > [email protected]> > > . > > For more options, visit this group at > >http://groups.google.com/group/google-appengine?hl=en. > > -- > Nick Johnson, Developer Programs Engineer, App Engine > Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: > 368047
-- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
