summaryrefslogtreecommitdiff
path: root/src/site/apt
diff options
context:
space:
mode:
Diffstat (limited to 'src/site/apt')
-rw-r--r--src/site/apt/index.apt52
1 files changed, 47 insertions, 5 deletions
diff --git a/src/site/apt/index.apt b/src/site/apt/index.apt
index 463b593..01dff9b 100644
--- a/src/site/apt/index.apt
+++ b/src/site/apt/index.apt
@@ -7,7 +7,7 @@ Carbonado
Carbonado is an extensible, high performance persistence abstraction layer
for Java applications, providing a relational view to the underlying
persistence technology. Persistence can be provided by a JDBC accessible SQL
-relational database, or it can be a BDB. It can also be fully replicated
+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
@@ -34,10 +34,52 @@ there are no extra build time steps.
when accessing the actual storage. Low overhead is achieved in part by auto
generating performance critical code, via the Cojen library.
+* Version 1.2
+
+ Carbonado 1.2 adds many new features, which are summarized here and in the {{{http://carbonado.svn.sourceforge.net/viewvc/*checkout*/carbonado/trunk/Carbonado/RELEASE-NOTES.txt}release notes}}:
+
+ * General features
+
+ * Loads and queries can invoke {{{apidocs/com/amazon/carbonado/Trigger.html#afterLoad%28S%29}triggers}}.
+
+ * Added support for {{{apidocs/com/amazon/carbonado/Derived.html}derived}} properties.
+
+ * Storable property values can be accessed by {{{apidocs/com/amazon/carbonado/Storable.html#getPropertyValue%28java.lang.String%29}name}} in addition to the direct method.
+
+ * Repositories
+
+ * New {{{apidocs/com/amazon/carbonado/repo/map/MapRepositoryBuilder.html}volatile repository}} provided, backed by a {{{http://java.sun.com/javase/6/docs/api/java/util/concurrent/ConcurrentSkipListMap.html}ConcurrentSkipListMap}}.
+
+ * Replicated repository resync operation allows a {{{apidocs/com/amazon/carbonado/capability/ResyncCapability.html#resync%28java.lang.Class,%20com.amazon.carbonado.capability.ResyncCapability.Listener,%20double,%20java.lang.String,%20java.lang.Object...%29}listener}} to be installed which can monitor progress or make changes.
+
+ * Berkeley DB repositories add support for BigInteger and BigDecimal property types.
+
+ * JDBC features
+
+ * Created {{{apidocs/com/amazon/carbonado/Automatic.html}@Automatic}} annotation, which enables MySQL auto-increment columns.
+
+ * Added {{{apidocs/com/amazon/carbonado/sequence/StoredSequence.html}sequence support}} for SQL databases that don't natively support sequences.
+
+ * Support for {{{apidocs/com/amazon/carbonado/repo/jdbc/JDBCRepositoryBuilder.html#setAutoVersioningEnabled%28boolean,%20java.lang.String%29}automatic version management}}, eliminating the requirement that triggers be installed on the database.
+
+ * More lenient with respect to column mappings: numbers and dates can represented by Strings; character data type supported; non-null column can be marked as @Nullable if also @Independent.
+
+ * Query engine features
+
+ * Added {{{apidocs/com/amazon/carbonado/Query.html#fetchSlice%28long,%20java.lang.Long%29}Query.fetchSlice}} method for supporting limits and offsets.
+
+ * Derived properties can be indexed, allowing function and join indexes to be defined.
+
+ * Added support for "where exists" and outer joins in queries via new syntax.
+
+ * Added convenience method, {{{apidocs/com/amazon/carbonado/Query.html#exists%28%29}Query.exists}}.
+
+ * Optimizations for covering indexes when using Berkeley DB.
+
* Packages
Carbonado is broken down into several package bundles for better dependency
-management. The easiest way to get started with Carbonado is to use the BDB-JE
+management. The easiest way to get started with Carbonado is to use the Berkeley DB JE
backed repository. For this, you need to get the Carbonado and
CarbonadoSleepycatJE package bundles.
@@ -47,11 +89,11 @@ CarbonadoSleepycatJE package bundles.
* {{{http://sourceforge.net/project/showfiles.php?group_id=171277&package_id=208711}CarbonadoSleepycatJE}}
- Contains repository for supporting Sleepycat/Oracle, {{{http://www.oracle.com/database/berkeley-db/je/index.html}BDB Java Edition}}. BDB-JE code must be downloaded and installed separately.
+ Contains repository for supporting Sleepycat/Oracle, {{{http://www.oracle.com/database/berkeley-db/je/index.html}Berkeley DB Java Edition}}. Berkeley DB JE code must be downloaded and installed separately.
* {{{http://sourceforge.net/project/showfiles.php?group_id=171277&package_id=208709}CarbonadoSleepycatDB}}
- Contains repository for supporting Sleepycat/Oracle {{{http://www.oracle.com/database/berkeley-db/db/index.html}BDB}}. BDB code must be downloaded and installed separately.
+ Contains repository for supporting Sleepycat/Oracle {{{http://www.oracle.com/database/berkeley-db/db/index.html}Berkeley DB}}. Berkeley DB code must be downloaded and installed separately.
[]
@@ -95,7 +137,7 @@ replacement for JDBC. These kinds of applications may choose a blend of
Carbonado and JDBC. To facilitate this, access to the JDBC connection in use by
the current transaction is supported.
- The Carbonado repositories that are backed by BDB use a rule-based query
+ The Carbonado repositories that are backed by Berkeley DB use a rule-based query
optimizer to come up with a query plan. Cost-based optimizers are generally
much more effective, since they estimate I/O costs. Carbonado has a rule-based
optimizer mainly because it is easier to write.