Objectmatter Logo
Home Page Products Support Contact Us Java Links
Visual BSF v3.0

Quick Overview

VBSF™ v3 includes many new features and substantial improvements in performance and memory efficiency. Beta sites have reported performance improvements as high as 100% over VBSF v2.x.

Here is what our customers are saying about v3:

"It looks like that you have been doing a lot of very good thinking and testing :-) The moving of the schema's and the cache from the Database to the Server is - without knowing it - what we have been looking for, for a long time. It will without doubt help us to improve performance and quality when using multiple threads in our app."

"You should forget 2.4 and go straight to 3.0 as it's vastly improved."

"The latest beta passed my tests. I did some hard core importing, and deleting. No problems at all. I've committed my code to cvs and now we'll wait till a beta of our software is released to see what test results we get back from more real life use."

Version 3 is available in two editions: Professional and Enterprise. The only difference between them is that the Enterprise Edition has a global shared object cache and the Professional does not. Internal benchmark tests show that the Enterprise Edition's global shared cache can improve multi-user application performance by 40% or more vs. the Professional Edition. Both versions are included in the same binary distribution file. See the installation instructions for details on selecting which edition to run. Please note that the RMI distributed edition of VBSF has been discontinued and is not available in v3 or any other future releases.

Below are the major new features included in v3.

 

Persistence Layer New Features

  • A true Global Shared Object Cache (Enterprise Edition only) allows all Database objects that share the same Server object to utilize the same object cache. All operations performed in one Database object are automatically available in all other Database objects once the transaction commits. All synchronization occurs in memory without incurring any database hits.
  • Substantial performance improvements. The persistence layer has undergone a substantial rewrite in many areas that affect performance.
  • Support for Configurable Dynamic Caching. Defining dynamic caches allow the garbage collector to reclaim memory in use by the caches according to the collector's policy in regard to the cache type.
  • Substantial memory efficiency improvements. The memory footprint has been reduced via sharing and reuse of resources. Schema information is now shared among all Database objects.
  • Dynamic cache utility classes are now included. These can be used directly in your own applications to implement dynamic (weak & soft referenced) and/or managed object caches.
  • Complete XML support. Full round-trip support from XML documents to persistent object graphs and back. Persistent objects can be retrieved as XML documents and updated in the database from XML documents.
  • Initial support for the JDO API.
  • Directly executes from a mapping schema saved in XML format.
  • The OCollection and OReference classes have been improved so there are no issues in using persistent objects that have OCollection and OReference attributes across multiple Database objects or serializing them.
  • The OCollection class now implements the java.util.Collection standard Java interface so REFERENCED COLLECTION attributes that use the OCollection class do not have to be declared as OCollection and instead can be declared as java.util.Collection. This allows your persistent classes to be fully decoupled from VBSF while still taking advantage of the lazy retrieval capabilities of the OCollection class.
  • Support for allowing the Java data type of a REFERENCE attribute to be declared as an application specific interface. This allows your persistent classes to be fully decoupled from VBSF while still taking advantage of the lazy retrieval capabilities of the OReference class.
  • Support for performing aggregate queries, such as count(x) or sum(x), via the new AggregateOQuery class.
  • A new CONTAINED class mapping type that allows mapping a contained class to a subset of the columns defined in the table of the container class.
  • Support for easily being able to dynamically supply database configuration properties at runtime without having to statically define them in the schema.
  • Automatic UUID Object ID generation. (v3.1x)
  • Inter-Server global cache synchronization allows all changes in each global cache within a VM to propagate to all other global caches in other VMs running in other boxes. (v3.1x)
  • Support for firing asynchronous database operations. (v3.1x)
  • Implementation of a VBSF JCA (J2EE Connector Architecture) resource adapter. (v3.1x)
  • Support for JDBC 2.0 batch statements and other enhancements. (v3.1x)
  • Partial object loading (e.g. JDO hollow objects). (v3.1x)
  • Expanded implementation of the JDO API, including the Query object and the Connector architecture for application server integration. (v3.1x)

Mapping Tool New Features

  • Ability to configure the cache on a per persistent class basis. Caches can be configured as static (like in v2.x) or dynamic using either weak or soft references. Caches can also be defined as managed. Managed caches maintain a minimum pre-defined cache size by preventing garbage collection using an MRU algorithm.
  • Improved source code and DDL generation facilities. Multiple file and batch generation supported.
  • Mapping schema and tool configuration options can be saved in XML format.

 


© 1997-2005 Objectmatter, Inc. All rights reserved.
TRADEMARKS. Products and company names mentioned herein are the trademarks of their respective owners.