Objectivity/DB is a commercial object database produced by Objectivity, Inc. It allows applications to store standard C++, C#, Java, or Python objects persistently, without converting them into the rows and columns used by a relational database management system (RDBMS). Objectivity/DB supports popular object-oriented languages as well as SQL/ODBC and XML. It is compatible with Linux, Macintosh, UNIX and Windows platforms, facilitating interoperability across different languages and hardware environments.

History

edit

Objectivity/DB was first introduced in 1990. The C++ and Java interfaces adhere to the ODMG'93 standard,[1] with subsequent additions of C# and Python interfaces. Objectivity, Inc. ceased in late 2023.

Architectural features

edit

Objectivity/DB operates as a distributed database, providing a unified logical view across a network of databases. It employs a distributed computing model where client applications transparently communicate with simplified servers processes. This architecture enhances scalability[2] and reliability, supporting ingest rates exceeding one terabyte per hour while concurrently facilitating data fusion and query operations.[3]

Objectivity/DB utilizes a distributed storage hierarchy, storing objects in logical clusters called containers within federated databases. Each object is assigned a unique 64-bit Object Identifier (OID) within a massive physical address space spanning millions of Terabytes. Notably, the largest reported deployment at SLAC's BaBar experiment stored over a petabyte of objects.[4][5]

The database offers flexibility in defining object placement within its storage hierarchy.[6] through customizable strategies encapsulated in XML configuration files. This approach allows database designers to specify how persistent objects are stored, distributed, and positioned relative to other designated objects.

In Objectivity/DB, objects can establish named uni-directional or bi-directional links with other objects, supporting various cardinalities (1:1, 1, many:1, many). Object Identifiers (OIDs) expedite navigation across networks of objects,[7] supporting scalable collections (tree, list, set etc.), indices, and hash tables. By eliminating relational Join operations typical in RDBMS, Objectivity/DB achieves enhanced performance advantages.[8][9][10]

The distributed architecture of Objectivity/DB has facilitated its adoption in grid computing environments and Service Oriented Architecture (SOA) applications. It holds certification as an IBM Ready for Grid product and supports the J2EE Connector Architecture (JCA) standard making it suitable for deployment in cloud environments.[11]

References

edit
  1. ^ R. G. Cattell; Douglas K. Barry; Mark Berler; Mark Berler; Jeff Eastman; David Jordan; Craig Russell; Olaf Schadow; Torsten Stanienda; Fernando Velez (January 2000). Object Data Standard: ODMG 3.0. Academic Press. ISBN 1558606475. Retrieved December 1, 2014.
  2. ^ "Georgetown University taps Objectivity for Big Data research". Government Security News. May 2013. Retrieved December 1, 2014.
  3. ^ "Scaling Objectivity Database Performance with Panasas® Scale-Out NAS Storage" (PDF). August 2011. Retrieved December 1, 2014.
  4. ^ Lessons Learned from Managing a Petabyte Jacek Becla and Daniel L. Wang, 2005
  5. ^ BaBar Database
  6. ^ Angela Guess (February 6, 2013). "Objectivity Launches Objectivity/DB 11.0". DATAVERSITY. Retrieved December 2, 2014.
  7. ^ Philip Howard (May 29, 2012). "Objectivity and InfiniteGraph". Bloor. Retrieved December 1, 2014.
  8. ^ Suzanne W. Dietrich; Susan D. Urban (2011). Fundamentals of Object Databases. Morgan & Claypool Publishers. p. 2. ISBN 9781608454761. Retrieved December 3, 2014.
  9. ^ Alan Dearle; Roberto V. Zicari, eds. (2010). Objects and Databases, Third International Conference Proceedings, ICOODB. Springer. p. 34. ISBN 978-3642160912. Retrieved December 3, 2014.
  10. ^ C.S.R Prabhu (2011). Object-Oriented Database Systems - Approaches and Architecture, Third Edition. Asoke K. Ghosh, PHI Learning Private Limited. p. 67. ISBN 9788120340930. Retrieved December 3, 2014.
  11. ^ "Objectivity: Complex Data-Management, Simplified". Neovise. 2014. Retrieved December 2, 2014.
edit