Open Source Perst Lite OODB For J2ME Devices Released

McObject has just released a micro-footprint version of the Perst open source, object-oriented embedded database for embedded systems and intelligent devices developed on the Java 2 Platform, Micro Edition (J2ME).


September 20, 2006
URL:http://www.drdobbs.com/database/open-source-perst-lite-oodb-for-j2me-dev/193004160

Issaquah, WA - McObject has just released a micro-footprint version of the Perst open source, object-oriented embedded database, targeted at embedded systems and intelligent devices developed on the Java 2 Platform, Micro Edition (J2ME).

Called Perst Lite, it has a code size that is about 30% smaller than standard Perst, well within the resource constraints of most intelligent embedded devices.

Embedded systems developers increasingly use Java, especially as micro-processors improve in their speed executing Java code. Sun Microsystems' J2ME, with its flexible user interfaces, robust security, and built-in networking, is proving especially popular for consumer electronics and mobile devices. In April, Evans Data Corp. announced survey results in which 52 percent of a sample of 500 wireless application developers reported using J2ME, up from 46 percent six months earlier.

But J2ME differs in major respects from standard Java (Java 2 Platform, Standard Edition, or J2SE), complicating vendors' ability to provide popular Java application development tools for embedded Java.

One of the major enhancements in Perst Lite is the substitution of its own lightweight code for standard Java's reflection mechanism.

Object-oriented database systems for Java rely on the language's reflection capability to inspect the object format at run-time and discover the format of the stored object. But J2ME, which targets small-footprint and embedded systems, omits reflection due to this function's complexity and resource requirements. This has limited the availability of OODBMSs for J2ME.

Perst Lite gets around this barrier by incorporating a utility that generates object serialization and de-serialization code for the application that incorporates the database. This code replaces reflection, but without the complexity and large run-time code footprint that caused reflection to be dropped from J2ME.

Another programming concept, "weak references," is commonly used by Java OODBMSs to permit garbage collection (automatic reclaiming of memory) while preventing out-of-control object cache growth. However, because weak references complicate garbage collection, many J2ME variants for specific devices do not support them. To address this issue, and permit efficient memory management, Perst Lite incorporates alternative object cache logic that does not depend on weak references.

Many developers prefer to use object-oriented database systems when working in object-oriented languages such as Java, crediting object database systems with better programming language integration than their relational counterparts. When a relational database is used, the application needs code that translates the relational representation of the data to the object representation required by the host language. This need increases application code size and impairs performance.

Perst Lite retains most of the features of the full version of Perst, including B-tree, Patricia Trie, Bit index, T-Tree and R-Tree indexes as well as List, Relation, and Set collections, all protected by transactions supporting the ACID properties (Atomicity, Consistency, Isolation and Durability). Perst Lite also offers multithreaded access, data encryption and asynchronous replication.

Under Perst's dual license, users can modify Perst and Perst Lite database source code and use it freely in other open source applications (software for which source code is made available) under the GNU General Public License (GPL). McObject's commercial license is required if source code of the Perst- or Perst Lite-based applications is to be withheld.

Terms of Service | Privacy Statement | Copyright © 2024 UBM Tech, All rights reserved.