Carbonado

An open source extensible, high performance persistence abstraction layer for Java applications
Download

Carbonado Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Freeware
  • Price:
  • FREE
  • Publisher Name:
  • Brian S O'Neill
  • Publisher web site:
  • Operating Systems:
  • Mac OS X
  • File Size:
  • 955 KB

Carbonado Tags


Carbonado Description

An open source extensible, high performance persistence abstraction layer for Java applications Carbonado is a free and open source high performance, extensible persistence abstraction layer for Java applications, that provides a relational view to the underlying persistence technology. Persistence can be provided by a JDBC accessible SQL relational database, or it can be a Berkeley DB. It can also be fully replicated between the two.Even if the backing database is not SQL based, Carbonado still supports many of the core features found in any kind of relational database. It supports queries, joins, indexes, and it performs query optimization. When used in this way, Carbonado is not merely a layer to a relational database, it is the relational database. SQL is not a requirement for implementing relational databases.Carbonado is able to achieve high performance by imposing very low overhead when accessing the actual storage. Low overhead is achieved in part by auto generating performance critical code, via the Cojen library. What's New in This Release: · Builds using JDK1.6, but targets JDK1.5. · Added support for sequences for SQL databases that don't natively support sequences. · Added @Automatic annotation, which also supports auto-increment columns. · JDBC repository supports optional automatic version management, eliminating the requirement that triggers be installed on the database. · FilteredCursor ensures that filter being used is bound. · BDBRepository detects if changes are made to primary key definition and throws exception. · Added support for derived properties. · Enhanced query engine to optimize for covering indexes. · Added methods to access Storable properties by name. · JDBCRepository allows more column types to be represented by Strings -numbers and dates. · JDBCRepository supports char and Character property if column is char type of length 1. · JDBCRepository allows non-null column to be @Nullable if also @Independent. · Fixed bug in generating SQL with nullable primary key properties. · Added convenience method, Query.exists(). · Added support for defining alternate keys in synthetic Storables. · Added trigger support for after loads and queries. · Removed vestigial support for wrapping Storables. · Storable toString and toStringKeyOnly methods skip uninitialized properties. · Calling Storable.update when there are no dirty properties actually does an update instead of being "smart" and ignoring the update request. The old behavior was non-intuitive and interfered with expected trigger behavior. · Many-to-one join properties which don't exist always return null now, instead of throwing FetchNoneException. Behavior now matches that of nullable join properties, which never threw FetchNoneException. Nullable join properties which resolve to null are cached as before, but non-nullable join properties do not cache null. · Added support for "where exists" in queries via new syntax. · Added support for outer joins via new syntax. · Transactions can be detached and attached from/to the current thread. · Storables can be serialized for temporary persistence or remote calls. · Support fetching slices of queries, which translates to a SQL offset and limit. · Added volatile map repository. · Added listener callback for replicated repository resync. · Added support for BigInteger and BigDecimal property types.


Carbonado Related Software