I believe there is no overhead issue. I have been able to move all of the SQL tables into a module so that they persist across requests. And in the module, I wrapped the table creates in an if() statement which checks to see if the table already exists. I changed db.py to just have wrapper methods which pass the create call down to the module. So each request calls the interpreted code in db.py but that is now just a light pass-thru wrapper with negligible overhead.
A few weeks ago, I have also posted a zip of a proof of concept of a hybrid GAE/SQL model. On Sep 30, 8:16 pm, Robin B <[email protected]> wrote: > > One entity group per web2py object, lack of list property support, > > etc. dooms the current implementation to "small" web sites. If db.py > > has no tables, will the "Web2py also re-evaluates your model > > definition" overhead vanish? > > Yes, and to be practical, there is not much overhead. I was trying to > answer the question, what is the efficiency difference between web2py > and GAE Models, the truth is there is so little difference it should > not be a concern. > > Like I said, the web2py DAL interface is remarkable in that it can > allow adding all these GAE features, and make it backward compatible > with SQL DAL. (win-win) > > -batch get/put/delete > db(db.table.id.belongs(1,2,3)).select(), > db.table.insert([{},{},{}]), > db.table.delete(1,2,3) > > -list-properties > db.table.tags=['a','b','c'] > SQL dal already supports this by joining into a delimited string > > -transactions by passing a callable > row.update(lambda row: row.counter+=1) > SQL dal would just call the callable, since the request is already a > transaction > > -storing keys as fields > store the actual Key as a string field call it key, SQL dal will > simply ignore the field > > -setting parent key > models would accept a parent= which is a string or Key > add a parent string field to every GAE DAL table but handle it as a > special case > > -key only queries > db(db.table.title=='foo').select(db.field.id) > > I remember 1 year ago when I started using the GAE DAL (gql.py) and it > was in very rough shape and did not do what I needed. Fortunately > Web2py is an open source project, so started fixing things to make it > work how I wanted, and fortunately Massimo accepted my patches, and > that is how things got to the current state. > > If there is a feature that you need, try adding it with doctests. If > you get stuck, post a question to this list, and I guarantee you will > get an helpful answer to your question. > > Robin --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "web2py-users" 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/web2py?hl=en -~----------~----~----~----~------~----~------~--~---

