Re: Archtypes SQL Storage
Martin Aspeli <[email protected]> Wed, 11 Oct 2006 21:03:07 +0100
| Newsgroups | gmane.comp.web.zope.plone.archetypes.devel |
|---|---|
| Message-ID | <[email protected]> |
> It was slow for us for both data via sql and data in the zodb. (And the > zodb bloated fast because the data changes a lot.) I never tried to > track down the reasons because I was looking for a working solution at > the time, not to fix Archetypes. > >> If I had to implement this, the first thing that I would do is ... > > I think what you're describing is very much like SQLWindowStorage in the > Archetypes svn. But that seems to be not quite finished. It's not, and this has to do with the fact that AT storage is very field-oriented. It's quite hard to do things like only committing on transaction boundaries or only committing when all fields have been mutated, since the storage doesn't now when the sequence of mutations for each field has finished. We hacked around this in SharedSQLStorage (which works, for a limited set of use cases) and this inspired SQLWindowStorage, but I don't think Martin F. Krafft finished it (and I haven't seen anyone else pick it up). However, it's important to distinguish three use cases here. - Content is created and managed through Plone, but an RDBMS is used to store field values. This probably the less useful use case, since the ZODB handles these cases better most often. - Content is created through Plone that attaches (probably via the primary key) to a database record (possibly creating it, possibly using an existing one) and thereafter the two are linked. This is what SQLWindowStorage was about, and it's useful if you want the Plone UI to manage a subset of the DB records and you want users to create these explicitly. I think SQLWindowStorage is salvagable if anyone has the cycles to put into it. - You want views and/or CRUD operations for your data transparently, so that if a new record is added to the database, it'll show up in Plone immediately. This is the use case I think Bill and Dennis were after. This is addressed, as I see it, with Flay and probably with Alchemist. Bill - if you can release that code (and possibly some documentation, say a short tutorial on plone.org, would be ideal!) then I think you can lower that "outrageous" learning curve quite a lot. Formlib, SQLAlchemy and friends are not only quite new, until recently the available integration was fairly shaky. We're getting there, and I'm sure your help will get us even closer! :) Cheers, Martin ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642