Axion: Features
Some Background
Despite its beta state, Axion is not a toy database. It has been (and continues to be)
used in commercial products containing millions of rows and gigabytes
of data, and has been shown to readily process thousands of transactions a second
(on mediocre desktop hardware).
These early applications had somewhat peculiar needs--a high performance, small footprint
but fairly large, primarily write-once, in-process database. Hence most of the initial
development has focused on these features. Yet the Axion team aims to provide a
complete engine as well, and we believe we are well on our way to that goal.
Supported Features
-
DDL
-
-
ALTER TABLE [DROP|ADD] CONSTRAINT
-
CREATE TABLE [IF NOT EXISTS]
-
CREATE [UNIQUE] INDEX [IF NOT EXISTS]
-
CREATE SEQUENCE [IF NOT EXISTS] ... [ STARTS WITH ...]
-
CREATE VIEW
-
DROP TABLE [IF EXISTS] ...
-
DROP SEQUENCE [IF EXISTS] ...
-
DROP INDEX [IF EXISTS] ...
-
DROP VIEW
-
DEFAULT expression (in column definitions)
-
DML
-
-
DQL
-
-
SELECT [ALL|DISTINCT] ... [FROM ...] [WHERE ...] [ORDER BY ...] [LIMIT expression] [OFFSET expression]
-
CASE (WHEN ... THEN)+
-
LEFT and RIGHT OUTER joins, INNER joins, cross joins
-
LIMIT (SELECT ... LIMIT n)
-
OFFSET (SELECT ... [LIMIT n] OFFSET m)
-
ORDER BY (including functions, non-selected columns, etc.)
-
GROUP BY
-
WHERE
-
-
JDBC
-
-
BLOBs (including compressed BLOBs)
-
CLOBs (including compressed CLOBs)
-
Driver
-
DataSource
-
most (relevant) JDBC meta-data
-
Miscellaneous
-
-
aggregate functions (operating on multiple rows, like COUNT or MAX)
-
auto-number columns (via sequences and column defaults)
-
configurable data type and function names
-
pluggable data types
-
pluggable functions
-
pluggable index types
-
pluggable table types
-
ROWNUM and SYSDATE (like Oracle's pseudo-columns)
-
scalar functions (operating on a single row, like UPPER/UCASE or CONCAT)
-
sequences (including NEXTVAL and CURRVAL)
-
transactions (snapshot isolation, stronger than TRANSACTION_SERIALIZABLE, with no locking)
-
sub-selects
See Axion's test suite for examples of these features in action.
See the tidbits page for some additional features.
Not (Yet) Supported Features
Many of these features aren't that far away, we simply haven't had significant need
for them just yet. If there are missing features that are critical to you,
let us know,
we may be able to provide them sooner than you think. (Of course, you're welcome to
join us
as well.)
Axion - Open Source Java Database Engine
$Id: features.html,v 1.58 2007/11/15 15:09:27 rwald Exp $
Published 15 Nov 2007 at 3:07 PM GMT.