Objectivity/DB: Difference between revisions

Content deleted Content added
m Added {{advert}} tag to article using Friendly
Line 1:
{{article issues
{{advert|date=January 2010}}
| COI=July 2010
{{Cleanup|date=April 2007}}
{{advert |date advert=January 2010}}
{{COI}}
| cleanup=April 2007
}}
'''Objectivity/DB''' is a commercial [[object database]] produced by Objectivity, Inc. It allows applications to make standard [[C++]], [[Java (programming language)|Java]], [[Python (programming language)|Python]] or [[Smalltalk]] objects persistent without having to convert the data objects into the rows and columns used by a [[relational database management system]]. Objectivity/DB supports the most popular object oriented languages plus [[SQL]]/[[ODBC]] and [[XML]]. It runs on [[Linux]], [[LynxOS]], [[UNIX]] and [[Microsoft Windows|Windows]] platforms. All of the languages and platforms interoperate, with the Objectivity/DB kernel taking care of compiler and hardware platform differences.
 
Line 18 ⟶ 20:
Objectivity/DB is also different from RDBMSs in the way in which it handles queries. The application declares and initializes an iterator that locates and returns qualified objects as soon as they are located. Many RDBMSs manifest a view of the results before returning any of them. The Objectivity/DB Parallel Query Engine splits queries into subtasks directed at individual databases or containers. Remote query agents service each subtask and return results to the iterator. The Parallel Query Engine has two replaceable components: a splitter that can determine how to best subdivide the task and a filter in the query agent that can further refine a query. A query involving cities in Europe might be split into forty nine subtasks, one for each country. The filter might access an external data source before qualifying or disqualifying the objects that the Query Agent has found in the Objectivity/DB database or container.<ref>[http://www.odbms.org/download/025.01%20Guzenda%20The%20Evolution%20of%20a%20Distributed,%20Federated%20Object%20Query%20Engine%20June%202006.PDF The evolution of a distributed, federated object query engine] Leon Guzenda, June 2006</ref>
 
Databases and system data (catalogs and [[Database schema|schema]]) can be replicated to multiple locations using a quorum based synchronous replication mechanism. Replicas that are temporarily separated from the quorum are transparently resynchronized when they are reconnected to the network that services them and their peers. Individual databases and lock servers can be allocated votes that are used to determine whether or not a client can update a replica.
 
The distributed database and processing architecture of Objectivity/DB has allowed it to be used in many [[grid computing]] environments. It has attained certification as an IBM Ready For Grid product. It is also used in [[Service Oriented Architecture]] applications. Objectivity For Java has support for the [[J2EE Connector Architecture]] [JCA] standard.