Perst Embedded Database Boosts Performance & Stability In Popular All-Java ‘Frost’ Freenet Client
March 19, 2008 — The all-Java Perst™ open source, object-oriented embedded database system from McObject® has significantly improved performance, stability and development ease in the popular open-source Frost client software for the Freenet global peer-to-peer network. The new Frost client has already been downloaded by thousands of Freenet users who are enjoying a “much better” application experience due to Perst, according to a Frost project leader.
Frost is a newsgroup reader-like client application used to share encrypted messages, files and other information over Freenet without fear of censorship. Frost previously used an open source database based on the SQL application programming interface (API). In late 2007, a newly released Frost version adopted Perst as a replacement for the embedded SQL database. Within this version, Perst stores messages as well as message and file-sharing meta-data, including a list of all shared files in the network, according to Karsten Graul, administrator of the global Frost development project.
“The Frost experience became much better since we started using Perst, due to shorter response times,” Graul said. He attributed the performance increase to eliminating SQL processing overhead, and to developers’ enhanced ability with Perst to optimize database access for different data types and layouts.
In contrast to SQL databases, Perst stores data directly in Java objects, eliminating the need for expensive (in performance terms) run-time conversions between the database representation of the data and the Java representation. Perst’s API is tightly integrated with Java, resulting in exceptional ‘transparent persistence’ and ease in working with objects.
Improvements cited in the Perst-based Frost client software include:
Reliability. The previously used SQL database often left files in an inconsistent state when Frost ended unexpectedly, Graul said. This resulted in corrupted data. In contrast, Perst’s transaction mechanism protects the integrity of its data files, and the database can recover quickly, he said.
Development ease. Perst’s object-oriented approach simplifies changing or extending storage code. For example, when a new field is added to a persistent class, Perst can automatically add this field to existing persistent data records.
Footprint. Without SQL processing overhead, Frost consumes less memory. Disk space is conserved by Perst’s ability to store text encoded in UTF-8 characters.
Performance. The SQL database in Frost became slower when table size grew, and developers could do little to improve performance. “In a SQL system, you formulate a query in SQL and the SQL system transforms the query into an access strategy. You have no direct way to influence the strategy that is used to access the data,” Graul said. In contrast, Frost’s developers are able to optimize Perst for accessing specific types of data, and control data access strategies, resulting in better performance, Graul said.
About McObject
Founded by embedded database and real-time systems experts, McObject offers proven data management technology that makes real-time systems smarter, more reliable and more cost-effective to develop and maintain. McObject counts among its customers industry leaders such as DaimlerChrysler, GigaSpaces, Siemens, Phillips, EADS, JVC, Tyco Thermal Controls, F5 Networks, CA, Motorola and Boeing. McObject, based in Issaquah, WA, is committed to providing innovative technology and first-rate services to customers and partners. The company can be reached at +1-425-888-8505, or visit www.mcobject.com.
McObject is a registered trademark of McObject LLC. All other company or product names mentioned herein are trademarks or registered trademarks of their respective owners.