Zope Object Database

Zope Object Database

Infobox_Software
name = Zope Object Database



caption =
collapsible = yes
developer = Zope Corporation
status =
latest_release_version =
latest_release_date =
latest_preview_version =
latest_preview_date =
operating_system = Cross-platform
size =
programming_language = Python
genre = Object Database
license = Zope Public License
website = http://www.zope.org/
The Zope Object Database (ZODB) is an object-oriented database for transparently and persistently storing Python objects. It is included as part of the Zope web application server, but can also be used independently of Zope.

Features of the ZODB include: transactions, history/undo, transparently pluggable storage, built-in caching, multiversion concurrency control (MVCC), and scalability across a network (using ZEO).

The ZODB is a mature Python datastore that has hundreds of thousands of systems today running on top of it.

History of ZODB

* Created by Jim Fulton of Zope Corporation in the late 90s.

* Started as simple Peristent Object System (POS) during Principia development (which later became Zope)

* The persistence from ZODB leverages ExtensionClass which was the precursor to current Python metaclass implementation

* ZODB 3 was renamed when a significant architecture change was landed.

* ZODB 4 was a short lived project to re-implement the entire ZODB 3 package using 100% Python.

ZEO

ZEO (Zope Enterprise Objects) is a ZODB storage implementation that allows multiple client processes to persist objects to a single ZEO server. This allows transparent scaling, but the ZEO server is still a single point of failure.

Pluggable Storages

* Network Storage (aka ZEO) - Enables multiple python processes load and store persistent instances concurrently.

* File Storage - Enables a single python process to talk to a file on disk.

* relstorage - Enables the persistence backing store to be a RDBMS.

* Directory Storage - Each persistent data is stored as a separate file on the filesystem. Similar to FSFS in Subversion.

* Demo Storage - An in-memory back end for the persistent store.

* BDBStorage - Which uses Berkeley DB back end. Now abandoned.

Failover Technologies

* Zope Replication Services (ZRS) - A commercial add-on that removes the single point of failure, providing hot backup for writes and load-balancing for reads.

* zeoraid - An open source solution that provides a proxy Network Server that distributes object stores and recovery across a series of Network Servers.

* relstorage - since RDBMS technologies are used this obviates need for ZEO server.

ee also

* Object database

External links

* [http://www.python.org/workshops/2000-01/proceedings/papers/fulton/zodb3.html Introduction to the Zope Object Database]
* [http://wiki.zope.org/zope2/ZODB ZODB page on wiki.zope.org]
* [http://wiki.zope.org/ZODB/guide/index.html ZODB/ZEO Programming Guide]
* [http://www.zope.org/Members/adytumsolutions/HowToLoveZODB_PartII/HowToLoveZODB_PartI How To Love ZODB and Forget RDBMS]
* [http://www.zope.com/products/zope_replication_services.html Zope Replication Services (ZRS)]
* [http://dirstorage.sourceforge.net/ DirectoryStorage, a high-reliability storage for ZODB]
* [http://svn.zope.org/relstorage/trunk/ RelStrage, a storage to RDBs: MySQL, PostGreDQL, Oracle]
* [http://svn.zope.org/zc.demostorage2/trunk DemoStorage2, a revision of DemoStorage which ships with ZODB]
* [http://svn.zope.org/gocept.zeoraid/trunk/ ZEORaid]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • Zope Object Database — Desarrollador Zope Corporation http://www.zodb.org/ Información general Última versión estable 3.10.3 12 de abril de 2011 …   Wikipedia Español

  • Zope Object Database — Die Zope Object Database (engl. für „Zope Objekt Datenbank“, auch ZODB) ist eine objektorientierte Datenbank, die vom Zope Webanwendungsserver dazu genutzt wird, Daten persistent zu speichern. Dafür werden Python Objekte direkt in die Datenbank… …   Deutsch Wikipedia

  • Object database — Example of an object oriented model.[1] An object database (also object oriented database management system) is a database management system in which information is represented in the form of objects as used in object oriented programming. Object …   Wikipedia

  • Comparison of object database management systems — Features Information about what fundamental ODBMS features are implemented natively. Name Current Stable Version Language(s) SQL support Datatypes License Description Caché 2010.1.4 ObjectScript (dynamic language), Basic. Java/.NET object mapping …   Wikipedia

  • Zope — 2 Интерфейс управления Zope в окне веб браузера. Тип Сервер приложений …   Википедия

  • Zope — est un serveur d application web orienté objet, libre, écrit en langage de programmation Python et gérable à partir d une interface Web. Zope publie sur le réseau des objets Python enregistrés dans une base de données objet, ZODB. Des types d… …   Wikipédia en Français

  • Zope 3 — is the new generation of the popular Zope web application server, rewritten from scratch with a component architecture and which has evolved into a large library of reusable Python components. The first production release of the software, Zope X3 …   Wikipedia

  • Zope — 2 Zope management interface en la ventana de un navegador Web. Desarrollador Zope Corporation …   Wikipedia Español

  • Zope — Infobox Software name = Zope caption = Zope management interface in a web browser window. collapsible = yes developer = Zope Corporation status = Active latest release version = 3.3.1 latest release date = release date|2007|01|14 latest preview… …   Wikipedia

  • List of object-oriented database management systems — The following is a list of object oriented database management systems.*Caché * [http://www.codeplex.com/Cerebrum Cerebrum : Object oriented network knowledge base] *ConceptBase *Datawasp *Db4o *eXtremeDB *Facets (previously known as GemStone J)… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”