[Zope-dev] Alternative Storages: (was RelationalStorage (was LocalFS))

Jason Spisak 444@hiretechs.com
Thu, 04 May 2000 15:54:26 GMT


Phillip J. Eby:

> At 03:08 PM 5/4/00 +0000, Jason Spisak wrote:
> >Phillip J. Eby:
> >
> >> Ty and I are working on fixing that.  As of today, the Specialist+Rack
> >> subsystems of the ZPatterns library are now capable of managing objects
> >> with mixed-source attributes and property sheets.  
> >
> >Can you use that code and extend it to allow Zope to pull it's object data
> >from multiple sources? 
> >
> 
> Not really.  It operates at a different level of abstraction than that.  It
> can, however, be extended to allow objects stored in a "primary" ZODB
> Folder or ObjectManager the ability to have mixed-source attributes and
> propertysheets.  But there has to be some kind of object to "start with".
> 

This does go a long way to solving the high-write and scalability problem
just by itself.  There is nothing wrong with the FileStorage for class data
because most applcations don't change those very often.  It's the instance
data that get's huge and changed a lot.  Maybe I'm trying to address an
issue that gets addressed by ZEO.  Maybe you are not the one to answer
this, but with Racks and ZEO could I have 2 different Zope installations
accessing the same Rack for the same object, as long as it's class
definition was the same?  For example I have a 2 Squishdots, one is in a
Zope that has CyberCash in it, and one doesn't.  Can I have the Squishdot's
using the same Rack for their information?

> But that level of extension may be all you need, since most
> "application"-oriented usages lend themselves well to using Racks directly,
> and "content"-oriented usages can still have some of their attributes and
> propertysheets handled elsewhere.
> 

That may be true.

> There are some key issues that are NOT dealt with in the Rack model yet,
> however.  Chief amongst them is Undo management. 

That's a hariy monster.

> Jim Fulton made a change
> to ZODB to allow the use of a custom Undo manager, which would allow
> prevention of Undo for transactions that modified "outside" sources, or
> alternatively allow them to be rolled back if there was a source for the
> undo data.  However, we have not yet begun to integrate this into the
> ZPatterns framework.  

On step at a time.

>Another, related issue is garbage collection, or
> making sure that objects are deleted in "both" places. 

Doesn't ZEO have a facility for this in it's framework.  Invalidation
messages etc...?

> I plan to add a GC
> function to Racks soon to allow them to clean up ZODB persistent data
> associated with non-ZODB objects which no longer exist, but that's only a
> beginning.
> 

All my best,

Jason Spisak
CIO
HireTechs.com
6151 West Century Boulevard
Suite 900
Los Angeles, CA 90045
P. 310.665.3444
F. 310.665.3544

Under US Code Title 47, Sec.227(b)(1)(C), Sec.227(a)(2)(B) This email
address may not be added to any commercial mail list with out my
permission.  Violation of my privacy with advertising or SPAM will
result in a suit for a MINIMUM of $500 damages/incident, $1500 for
repeats.