Re: [Zope-dev] multiple ZODB files?
Jim Fulton wrote:
Michel Pelletier wrote:
-----Original Message----- From: Anthony Baxter [mailto:anthony@interlink.com.au] Sent: Thursday, January 06, 2000 2:27 AM To: zope-dev@zope.org Subject: [Zope-dev] multiple ZODB files?
Is it possible to set up a site such that as well as the single Data.fs file, a seperate folder (say, /foo) is loaded from a different ZODB file? In particular, changes to stuff inside /foo should be written to the foo ZODB file.
Not yet, we have not fully thought about this problem of multiple databases,
I'll add that we have thought quite a bit about it, just not enough. It's harder than one might at first expect.
but ZODB was architected to be multi-DB aware.
Unfortunately, I suspect more architectural work will be needed too. :(
Some issues:
- How to handle references accross databases. At a basic level, this is not too hard, but...
Do it like soft-links across filesystems (i.e., "weak references").
- How to handle garbage collection in a multi-db environment. Oops. Storages are currently responsible for GC. This won't account for references from other databases.
Soft-links in a filesystem don't bump the link count on the target, so the link can be stale: this may be mitigated by the fact that a developer is likely to split the ZODB along "coupling and cohesion" lines, so the number of cross-ZODB links is likely to be small.
- How do databases get connected, from a UI point of view. Do you get to specify a database when you add an object? Any object? Where do databases get defined?
One idea I just thought of would be to have a databases area of the control panel where one could add database objects that modeled root database objects. Then, perhaps one would do the moral equivalent of a link from an object in one db to another.....
- .... There are probably other issues I haven't thought of.
If anyone wants to work on this, I'd be willing to set up a mailing list and provide advice.
-- ========================================================= Tres Seaver tseaver@palladion.com 713-523-6582 Palladion Software http://www.palladion.com
participants (1)
-
Tres Seaver