NoSQL Zone is brought to you in partnership with:

Mitch Pronschinske is a Senior Content Analyst at DZone. That means he writes and searches for the finest developer content in the land so that you don't have to. He often eats peanut butter and bananas, likes to make his own ringtones, enjoys card and board games, and is married to an underwear model. Mitch is a DZone Zone Leader and has posted 2569 posts at DZone. You can read more from them at their website. View Full User Profile

NoSQL DB, Objectivity/DB 10 Beefs Up Java and Adds C# .NET support

03.04.2010
| 10773 views |
  • submit to reddit
With the emergence of the term "NoSQL," many interested developers and architects are trying to clearly define what this means.  Some people may not know that Object Databases could be included in the NoSQL designation.  They can be used as persistent data stores or caches.  That means databases like Versant and Objectivity/DB are yet another part of the alternative database movement.  Objectivity/DB recently made it to version 10 with new features for Java developers and support for C# .NET developers.

Objectivity/DB supports distributed networks or it can be embedded in standalone devices.  It is used to persist standard C++, Java, C#, .NET platform, Python, or Smalltalk objects without having to convert the data into the rows and columns used by relational database management systems (RDBMS).  Objectivity also supports SQL/ODBC and XML while running on Linux, LynxOS, UNIX, and Windows.

                                           

New Features in Objectivity/DB 10

  • C# .NET support - Complete C# and .NET platform support along with interoperability between other Objectivity/DB supported languages.
  • LINQ support - Now includes the LINQ query language, which reduces many barriers for C# developers.  
  • .NET Config and Transaction support - This allows .NET developers to also use Objectivity/DB with the most up-to-date .NET technologies.
  • Eclipse support - Objectivity/DB 10 now supports IDEs such as Eclipse (others weren't mentioned).
  • Java performance - Up to a 30% performance gain on the Java platform.
  • Multi-federated access - Enables multiple federated database access for Java along with a "unified clustering strategy" for Java and other languages.
  • Admin enhancements - New ease-of-use functionalities have been added to performance analysis, upgrade support, database management, failover and disaster recovery tools, and debugging.

Model of Objectivity/DB in a Parallel Query Engine


Here are ten advantages of Objectivity/DB posted on their website:

  1. No O-R Mapping Layer: Significantly reduce development time, maintenance and administrative overhead, and completely eliminate all application errors associated with known o/r mapping issues.

  2. Flexibility: Objectivity/DB supports virtually any type of deployment, including embedded devices that simply cannot fail, data services on single machines, and vast distributed data and systems that span virtually any number of servers. Each Objectivity/DB federation provides a single logical view to more than 65,000 databases.

  3. ACID Transactions: Objectivity/DB provides complete support for Atomicity, Consistency, Isolation and Durability.

  4. Replication: Objectivity/DB databases can be replicated to multiple locations so that applications can have local copies of relevant data. All of the necessary controls (locking and quorum negotiation) are managed by the Objectivity/DB software.

  5. No Database Server: Enabling maximum performance with minimal physical constraints, Objectivity/DB does not rely on a database server like many traditional database technologies, but instead consists of a small application library linked into the application, a lock-server process and a page-server process. The lock-server and the page-server are lightweight applications that manage locks and data pages for all of the Objectivity/DB applications accessing a federated database.

  6. Schema Evolution: Complete support for schema evolution, allowing schema definitions to evolve over time to handle new requirements without jeopardizing existing data. The data shapes are evolved as needed to reflect the schema shapes.

  7. Object Clustering: You have full control to place related objects closer to each other on disk, often on the same disk page. This feature can greatly accelerate application performance.

  8. Scalable Collections: Objectivity/DB provides a broad range of scalable collections to enable data indexing in several ways, including Sets, Lists, and Maps.

  9. Object Relationships: Relationships alleviate the need to perform joins to access related data by allowing the creation of persisted "pointers" between objects that applications follow to retrieve related objects. This capability can improve performance by orders-of-magnitude over SQL joins.

  10. Fully Distributed, Peer-to-Peer Solution: Objectivity/DB's uniquely distributed architecture supports many data models. Organizations can distribute the applications and leave the data on a centralized server, or distribute the data across hundreds or thousands of computers and support centralized applications, or distribute the applications and the data. Developers can also use replication to move copies of data closer to their point-of-use.

Comments

Andrew McVeigh replied on Thu, 2010/03/04 - 3:15pm

from my telecomms days, i also seem to remember that objectivity is furiously expensive.  has this changed?

Nmatrix9 Nmatrix replied on Thu, 2010/03/18 - 1:48pm

This technology sounds very impressive and seems to alleviate a lot of the headaches associated with ORM.

Kristi Furrer replied on Mon, 2010/05/17 - 12:11pm

Objectivity is very competitively priced, check it out at http://www.objectivity.com/pages/objectivity/pricing.asp

John Doe replied on Sun, 2010/09/26 - 4:16am

There's no free community edition ? No way I can test it. Enterprise are now for Opensource Technology I know mine will never pay for experimenting with the Unknown.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.