the question of non-relational DBs is an interesting one, and increasingly will become so in the years to come.
I think DAL is structured to make web2py apps portable - allow you to run your design without regard to backend storage. Clearly, that is biased towards relational databases which are prevelant today. But non-relational data stores are increasingly becoming prevelant - big tables being the perhaps most influential example, but also Apache has interest in several: Hadoop, couchDB.. Clearly, the playing field is still expanding in this area, and it is exciting times. The question is not about stoping progress - the question is what path to take to lead / follow / influence progress. Since DAL imposes little enough on you for portability (a goal), it is unique in being able to map to _some_ BigTable functionality. The question is how to procdeed. I think DAL should follow the objectives which Massimo set out; extensibility may be useful for Relational use, but peripheral. What remains interesting is central portability in the domain of relational data stores; GAE is at the edge of that. A perhaps more interesting suggestion is to have a DAL project which writes a non-relational data store abstraction, and begins to put the structure of things like BigTable, ... I don't know what others would fit into the "same kind of" class, or what a useful union for a non-relational DAL would be - perhaps Hadoop, CouchDB, MongoDB, etc. But to do that would require people who are familiar with the broader uses of those other dbs, and interested in abstracting to create a new, non-relational DAL: DALnr?. For starters, I suggest a useful excercise might be to consider the interfaces within web2py, and how to make a DALnr that starts as SPECIFIC to one backend, to gain familiarity with it, and to work out the details of how this changes interfacing w/ web2py --- this excercise would free someone to explore the non-relational backend more thouroughly, and would second be a refactoring driver for web2py DAL integration... eventually leading to the ability to choose which KIND OF DAL your project uses. Perhaps some unification between these two - so that applications can be portable accross both types - will emerge, and this would be useful. But I think the first step is to cleanly, intentionally separate the two kinds of back ends and see where that leads. What does everybody think? - Yarko On Sun, May 3, 2009 at 12:38 PM, dlypka <[email protected]> wrote: > > When I evaluate a database framework, the first thing I look at is the > field types. > Right now I see web2py supports these types: > > •db.Field(name, 'string') > •db.Field(name, 'text') > •db.Field(name, 'password') > •db.Field(name, 'blob') > •db.Field(name, 'upload') > •db.Field(name, 'boolean') > •db.Field(name, 'integer') > •db.Field(name, 'double') > •db.Field(name, 'time') > •db.Field(name, 'date') > •db.Field(name, 'datetime') > •db.Field(name, db.referenced_table) # reference field > > My vote would go to extending the web2py types to include some non- > relational types and > the first one would be that GAE ListProperty type.,.. > Perhaps there needs to be some type of type-extension feature. NET has > it. > So then the developers can develop and plugin their own types. > And there can be a pass-thru or 'raw' query mode which will pass a > native query down to the actual database handle. > > We can't stop progress... > > On May 3, 12:31 pm, Tim Michelsen <[email protected]> wrote: > > Kless wrote: > > > I'm more interested into a framework backed by a non relational db, > > > mainly MongoDB [1]. By that reason I discard Django, and to Pylons > > > because it hasn't a plugin system that lets reuse/share applications. > > > > > Is web2py ready to use non-relational databases? > > > > > [1]http://mongodb.org/ > > > > I'd be interested in: > > *http://www.pytables.org > > *http://www.gaia-gis.it/spatialite/ > > > > Regards, > > Timmie > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "web2py Web Framework" 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 -~----------~----~----~----~------~----~------~--~---

