[omniORB] Announce: new project - Zdb
Richard Hardgrave
hardgrav@ttd.teradyne.com
Thu, 24 Jan 2002 11:39:23 -0600 (CST)
Would like to take a look at it, but your network
or host is down, according to the hyperlink from
the metavector site to the Solaris/Linux source.
Perhaps their page is out of date?
Richard
> From owner-omniorb-list@uk.research.att.com Mon Jan 21 22:35 CST 2002
> Date: Tue, 22 Jan 2002 13:58:56 +0900
> From: Huw Rogers <count0@building2.co.jp>
>
> I've developed a CORBA database server named Zdb
> released under the LGPL that uses OmniORB, Berkeley DB,
> and CORBA::ORBit (Perl CORBA mapping).
>
> It's at http://www.metavector.com/software.htm
>
> If anyone finds it interesting/useful, please let
> me know.
>
> Blurb follows.
>
> -Huw
>
> Zdb is a fully transactional open source multithreaded CORBA database
> server designed for rapid development of high-volume Internet
> applications, released under the GNU Lesser General Public License.
>
> Zdb uses Berkeley DB from Sleepycat Software http://www.sleepycat.com
> and OmniORB from AT&T Research Labs Cambridge
> http://www.uk.research.att.com
>
> Download the Zdb source distribution for Solaris or Linux from
> MetaVector
> at http://www.metavector.com/software.htm#zdb
>
> Data is passed in/out of Zdb as CORBA sequence<any> data streams.
>
> In addition to insertion, update and deletion, sophisticated query
> operations are supported, including selection on multiple indexes per
> table, batch transfer of query results, range queries, and joins across
> multiple tables.
>
> Mapping object hierarchies with multiple indexed 1-n, n-1 and n-n
> relationships is relatively straightforward. Indexes can be run on
> single fields or combinations of multiple fields. All tables have one
> primary index, and can have any number of additional secondary indexes.
>
> Individual values (fields) can be any CORBA base type, sequence<octet>,
> or one of two specific IDL types that are defined by Zdb for
> representing dates and times.
>
> The on-disk format is a space and CPU efficient architecture neutral
> self-describing data stream that parallels the sequence<any> format used
> externally. String/BLOB fields are always variable size with no
> application imposed limits. Data streams can be compared and indexed
> even if the number of values in the streams or the base types of the
> individual values vary - values of differing types are automatically
> upcast for comparison. This lets you mix e.g. strings and integers in
> the same field (column), even if it is indexed.
>
> Schema migration (adding fields to records or changing the base type of
> fields) can be performed without downtime, incrementally updating older
> records while continuing to provide service.
>
> Although the IDL can be used directly from any CORBA supported language,
> C++ and Perl client libraries are provided for efficient processing and
> conversion of the supported date/time formats to other standard formats
> and strings such as Unix time, struct tm, ISO8601, etc. The supplied
> client libraries also provide facilities that simplify coding clients,
> such as automatic transaction retry/resumption on deadlock, etc.
>
> Future plans include clustering and replication for fault tolerance
> based on Berkeley DB 4's replication facilities, and support for Zdb
> participation in distributed 2-phase commit transactions.
>
>