We are currently evaluating which database to use in a large scientific, Python-based application. At the moment the best candidate seems to be ZODB. However, we would like to use socket-based communication between a database server and a moderate number of clients (typically 2-100) in a heterogeneous network. E.g.: Machine 0: ZODB server. Machine 1: Long-running numerical application, gets input parameters from ZODB server, sends results back. Machine 2: Client running a GUI to display (intermediate) results obtained from ZODB server. Also used to send new input parameters to ZODB server. I.e., where we are now using db = DB(FileStorage('junk.fs')) root = db.open().root() root['somekey'] = myobject1 get_transaction().commit() we would like to do something like db = DB(ClientStorage('hostname', port_number)) and the other code unchanged. Will ZEO do this for us? Is ZSS the server we want, and will there be a ClientStorage class which can be plugged in instead of FileStorage? Thank you in advance, Ralf ====================================================================== | Ralf W. Grosse-Kunstleve | Lawrence Berkeley National Laboratory | | Scientist | One Cyclotron Road | | Building 4, Room 231 | Mail-Stop 4-230 | | Tel: 510-486-5713 | Berkeley, CA 94720 | | FAX: 510-486-5909 | USA | ====================================================================== --== Sent via Deja.com http://www.deja.com/ ==-- Before you buy.
Ralf Grosse-Kunstleve wrote:
We are currently evaluating which database to use in a large scientific, Python-based application. At the moment the best candidate seems to be ZODB. However, we would like to use socket-based communication between a database server and a moderate number of clients (typically 2-100) in a heterogeneous network. E.g.:
<snip>
we would like to do something like
db = DB(ClientStorage('hostname', port_number))
and the other code unchanged.
Will ZEO do this for us?
Yes.
Is ZSS the server we want, and will there be a ClientStorage class which can be plugged in instead of FileStorage?
StorageServers store their information in Storage objects just like ZODB DataBases. Thus, you can plug any kind of Storage you want into a StorageServer, including a ClientStorage that points to another StorageServer. http://www.zope.org/Members/michel/MyWiki/ZEODescription -- -Michel Pelletier http://www.zope.org/Members/michel/MyWiki Visit WikiCentral for the latest Zen: http://www.zope.org/WikiCentral
participants (2)
-
Michel Pelletier -
Ralf Grosse-Kunstleve