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 store, sort 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#.
McObject also offers the eXtremeDB embedded database system, with a Java Native Interface designed to meet ultra-high performance requirements. With the core database engine written in C, eXtremeDB JNI offers maximum database speed and scalability, but is accessed entirely from within Java applications while working with Plain Old Java Objects, or POJOs. Learn more.
In the TestIndex and PolePosition benchmarks, Perst displays one of its strongest features: its significant performance advantage over Java and .NET embedded database alternatives.
Rich in development tools
The Perst API is flexible and easy-to-use. The breadth of Perst’s specialized collection classes is unparalleled. These include B-Tree, R-tree, Patricia Trie, KD-Tree and T-Tree indexes; database containers optimized for memory-only access, and much more.
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.
Perst supports transactions with the ACID (Atomic, Consistent, Isolated and Durable) properties, and requires no end-user administration.
Perst is 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.
With free, available source code, nothing in Perst is hidden, and the developer gains complete control of the application and its interaction with the database.
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.
Perst Design Principles
- Persistent objects should be accessed in almost the same way as transient objects (transparent persistence)
- A database engine should be able to efficiently manage much more data than can fit in main memory
- No specialized preprocessors, enhancers, compilers, virtual machines or other tools should be required to use the database or develop applications with it.
McObject provides a variety of support options, both to assist those who are new to its technology, and to enable experienced developers to gain more from our open source, object-oriented embedded database system.
Flexible Licensing Options
Whether you’re developing open source software or a proprietary, commercial product, McObject has Perst licensing options that fit. Users can redistribute and/or modify Perst under the terms of the GNU General Public License version 3 (or earlier versions) as published by the Free Software Foundation. For projects that don’t fit under the GPL, a commercial license for Perst may be purchased from McObject. Contact us to learn more.
“We saved 6 programmer months by taking advantage of Perst for .NET’s Mono support.” …“Porting the database portion of Array Server to Linux was effortless with Perst.”
–Jack Liu, President OmicSoft, Cancer Genomics/BioInformatics/NGS Solutions
The package you are downloading is governed by the GNU Public License v3. Please contact us about a commercial license for Perst.
Complete Perst software package, with source code. Includes both Perst for Java (including Perst Lite for Java ME) and Perst for .NET, as well as links to the Perst Data Sheet, ProScout Demo MIDlet, and PolePosition performance benchmarks.
Perst & Perst Lite for Java
Perst for .NET