I'm thinking of developing an auction system using Zope and I'm going to be dealing with a lot of objects (if these things are represented that way rather than as records in a database).
 
But, I'm wondering about a few things:
 
1) Are all objects in Zope persistent? ZClass instances? Python objects?
 
2) Are all object instances visible as entries in a Zope UI folder? Is it possible to have persistent objects without them being visible? Or does it not matter that the UI will attempt to list them all (millions or more)?
 
3) If I am expecting a very large number of objects would I always be better off using an external database? or are there circumstances where ZODB is quite able to look after them?
 
4) If I need to be assured of being able to backup/restore the database and/or rebuild the site in the event of catastrophe does an external database provide any greater facility/reliability for achieving this? Or is ZEO the thing to use?
 
Thanks for answers. :)