I have recently discovered Zope and like what I see. I have some basic questions on how the object database scales. I come from a conventional RDBMS background... DB2 and Oracle. I would like to use the database for a content management solution, but I am worried about how the database will scale and perform. Where can I find documentation on how to administer the object database? Many of the links on http://www.zope.org on the ZODB are broken. My concern is that, based on my cursory look, it seems that the object database is stored in essentially one file on the file system. What happens when you outgrow that filesystem, or when you want to span disks in order to spread the load? Or, if I am expecting a large amount of files stored in the database, should I set up the server to store the files external to the object database? Any and all help would be appreciated, Robert
On Fri, Aug 29, 2003 at 09:33:47AM -0700, Robert B wrote:
I have recently discovered Zope and like what I see. I have some basic questions on how the object database scales. I come from a conventional RDBMS background... DB2 and Oracle.
I would like to use the database for a content management solution, but I am worried about how the database will scale and perform.
Where can I find documentation on how to administer the object database? Many of the links on http://www.zope.org on the ZODB are broken.
My concern is that, based on my cursory look, it seems that the object database is stored in essentially one file on the file system.
By default, yes, you get one FileStorage.
What happens when you outgrow that filesystem, or when you want to span disks in order to spread the load?
You look into the alternative storages: http://cvs.zope.org/*checkout*/ZODB3/Doc/storages.html?rev=1.8 note that this document was written by the DirectoryStorage author and is still missing some info about BerkelyStorage and much info on APE. Another option is DBTab which allows breaking up the zodb into multiple "mounts". It may even be possible to use different kinds of storage for each mount point.
Or, if I am expecting a large amount of files stored in the database, should I set up the server to store the files external to the object database?
that's also possible... external content can be served through zope via ExtFile, LocalFS, and FilesystemDirectoryView, which offer different features / drawbacks. There are also various ways to use a proxy server to reduce the need for zope to server large files. FSCacheManager is one interesting candidate: http://www.zopezen.org/Members/zopista/News_Item.2003-08-15.5935 -- Paul Winkler http://www.slinkp.com Look! Up in the sky! It's PSUEDO FOOLICIOUS ROUST-TROUSERS! (random hero from isometric.spaceninja.com)
Another option is DBTab which allows breaking up the zodb into multiple "mounts". It may even be possible to use different kinds of storage for each mount point.
FWIW, Zope past 2.7.0b1 have DBTab merged into the core. Changes to DBTab allow you to mount more databases using the main config file, which simplifies using multiple databases considerably. - C
participants (3)
-
Chris McDonough -
Paul Winkler -
Robert B