[ZODB-Dev] [Plone-Users] question about using repozo and blob storage
Tres Seaver
tseaver at palladion.com
Mon May 10 17:05:50 EDT 2010
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Ralf Hemmecke wrote:
> Tres Seaver <tseaver <at> palladion.com> writes:
>
>> Sharing the blobs using a DVCS pull sounds like an interesting approach.
>> One flaw with your outlined implementation is that ZODB blob files are
>> *never* updated: rather, if a ZODB object updates the blob object, it
>> creates a new blob file and stores its ID. Old blob files are cleaned
>> up during a pack.
>
> Interesting. You know what git does? If one adds a file X (actually git deals
> with contents not files) to the repository, git computes a hash value (sha1) and
> uses that value as the name for the file. It's stored under the .git directory.
> Some update of bookkeeping data and that's it.
> If the contents of the file X changes, and it is committed to the git
> repository, git computes a sha1 and stores the new content under that new sha1
> name + updating of the bookkeeping. The old file is not deleted. Git does not
> even bother to compress anything. That would be done by an additional "git gc".
> In contrast to most other SCMs git can be considered as a database. That git is
> mostly recognized as a version control system, is only half of the story. The
> underlying storage system is what make git so interesting.
>
> I have no good knowledge of zodb and you are certainly doing great with it, but
> my concern is with the blobs (which as I hopefully understand correctly are to
> be stored outside of Plone's Data.fs).
> Storing versions of files into a DVCS is like freeing the zodb (for blobs) from
> doing its own versioning.
>
> Actually, I think conceptually git and the zodb are quite similar. One
> transaction is nothing else than a commit in the SCM sense.
>
>> If you want to experiment with the idea anyway, then writing a "wrapper"
>> storage is probably the way to go: DemoStorage is one such beast, as is
>> the BlobStorage itself.
>
> I'm sorry, I cannot do this. I've simply no time for opening up another area of
> development for me.
I understand that completely: I'm there myself. ;)
Tres.
- --
===================================================================
Tres Seaver +1 540-429-0999 tseaver at palladion.com
Palladion Software "Excellence by Design" http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAkvodS4ACgkQ+gerLs4ltQ68JACgnReABZhAcIOcpxADMftidN6D
WK4AniKQUv7LU1X1fSqFY8gFZ3xuhllA
=J5Q0
-----END PGP SIGNATURE-----
More information about the ZODB-Dev
mailing list