| Company | McObject |
| Website | mcobject.com/perst |
| @McGuy | |
| Stage | Live |
| Launched | 2006 |
Perst is McObject’s open source, dual license, object-oriented embedded database system (ODBMS). It is available in one edition developed as an all-Java embedded database, and another implemented in C# (for Microsoft .NET Framework applications).
Perst gives developers the ability to sort, store and retrieve objects in their applications with maximum speed and with low memory and storage overhead, while leveraging the object-oriented paradigm of Java and C#.
Perst for Java is proven on the Android mobile device platform. It also includes Perst Lite, a version of the embedded database for the Java ME platform used in BlackBerry and Nokia smartphones and in other mobile and embedded devices. Perst for .NET supports both Silverlight and .NET Compact Framework.
As an object-oriented embedded database, Perst stores data directly in Java and .NET objects, eliminating the translation required for storage in relational and object-relational databases. This boosts run-time performance.
Perst’s core consists of only five thousand lines of code. The small footprint imposes minimal demands on system resources.
In benchmarks published by McObject, Perst displays one of its strongest features: its significant performance advantage over Java and .NET embedded database alternatives.
Perst supports transactions with the ACID (Atomic, Consistent, Isolated and Durable) properties, and requires no end-user administration.
The Perst API is flexible and easy-to-use. Perst’s specialized collection classes include a classic B-Tree implementation; R-tree indexes for spatial data representation; database containers optimized for memory-only access, and much more.
Perst is also distinguished by its ease in working with Java and C# objects, and suitability for aspect-oriented programming with tools such as AspectJ and JAssist. The result is greater efficiency in coding.
Perst’s extras include garbage collection, schema evolution, a “wrapper” that provides a SQL-like database interface (SubSQL), XML import/export, database replication, support for large databases, and more.