Open Source Database Engines in Java
|hsqldb is a relational database engine written in Java, with a JDBC driver, supporting a rich subset of ANSI-92 SQL (BNF tree format). It offers a small (less than 160k), fast database engine which offers both in memory and disk based tables. Embedded and server modes are available. Additionally, it includes tools such as a minimal web server, in-memory query and management tools (can be run as applets) and a number of demonstration examples.
Go To Hypersonic SQL
|Mckoi SQL Database is optimized to run as a client/server database server for multiple clients, however it can also be embedded in an application as a stand-alone database. It is highly multi-threaded and features an extendable object-oriented engine.
Go To Mckoi SQL Database
|QED, the Quadcap Embeddable Database. QED is a fast, small, pure Java, relational database, implementing the SQL 92 standard, with transactions and resilient failure recovery. QED has a novel open source license permitting free use of QED by all and free redistribution in other open source projects.
Go To Quadcap Embeddable Database
|Axion is a small, fast, open source relational database system (RDBMS) supporting SQL and JDBC written in and for the Java programming language.
Go To Axion
|The yaRDBMS (yet another relational database management system) is a Java based, transactional highly concurrent relational database management system with advanced query optimization, indexing features and crash recovery.
Go To yaRDBMS
|A very lightweight 100% Java text SQL engine that includes a JDBC driver
Go To TinySQL
|Ashpool is a lightweight XML Database written in Java(tm). It's goal is to use standard SQL92 syntax to query, add, update, and delete XML documents via a JDBC driver. The XML documents must hold to a table like structure. The reason for the table structure restriction is that SQL was designed to query table data not hierarchical data.
Go To Ashpool
|JDBC Driver for the spreadsheets Excel, StarOffice and OpenOffice.
Turn a directory with spreadsheets into a database. xls filenames become database schema's, sheets become tables. Use a rich subset of SQL to create sheets and query sheets. Join sheets, query database data and store it into excel or fill database tables with spreadsheets.
Go To Excel JDBC Driver
|Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java and available under the Apache License, Version 2.0. Some key advantages include:
* Derby has a small footprint -- about 2 megabytes for the base engine and embedded JDBC driver.
* Derby is based on the Java, JDBC, and SQL standards.
* Derby provides an embedded JDBC driver that lets you embed Derby in any Java-based solution.
* Derby also supports the more familiar client/server mode with the Derby Network Client JDBC driver and Derby Network Server.
* Derby is easy to install, deploy, and use.
Go To Apache Derby
|db4o (database for objects) is the open source object database for Java. Features include: fast native Java object persistence, ACID transactions, query-by-example, S.O.D.A. object query API, automatic class schema recognition, small footprint.
Go To db4o
|One$DB is a version of Daffodil DB , a J2EE-certified, JDBC 3.0 and SQL-99 compliant Java database. It is available in both Network and Embedded editions and has been designed to handle complex computing environments that demand a robust, scalable and feature-rich RDBMS that can operate across platforms.
Go To One$DB
|The Ozone Database Project is a open initiative for the creation of an open source, Java based, object-oriented database management system.
Ozone includes a fully W3C compliant DOM implementation that allows you to store XML data. You can use any XML tool to provide and access these data. Support classes for Apache Xerces-J and Xalan-J are included.
Go To Ozone
|H2 is a SQL database engine written in Java. JDBC and ODBC drivers, embedded and client/server mode. Clustering is supported. In-memory and disk based tables. A web console application is included.
Go To H2
|SmallSQL is a 100% pure Java DBMS, a relational database for Java desktop applications. It has a JDBC 3.0 interface and offering many ANSI SQL 92 and ANSI SQL 99 features. It is very small and fast because it does not have a network interface.
Go To SmallSQL Database
|A 100% pure Java, lightweight, single file embeddable database. Functionally similar to a cross between SQLite and BerkeleyDB. Developed for use with PDA and Mobile applications.
Go To Metanotion BlockFile
|JODB (Java Objects Database) is an open source object-oriented database.
The database uses a cache based on Soft References to
avoid using too much memory when the application requires it. The queries are optimized to use the minimal possible object instantiations during the search to avoid excessive garbage collection.
Go To JODB
|Jalisto is a lightweight transactional database written entirely in Java.
Jalisto comes in two versions: Jalisto SE (Standard Edition) and Jalisto ME (Micro Edition). Jalisto SE is an ideal solution for embedded and stand-alone systems. Jalisto ME, which will be available in Q4, targets mobile environments including cell phones, PDAs, and is compatible with the Java 2 Platform Micro Edition (J2ME).
Go To Jalisto
| AcornDB is a high performance, small footprint, transactional object oriented database written entirely in Java. It stores data in the application's native format, so no runtime data translation is required. AcornDB supports full ACID transactions and recovery. It provides an easy-to-use interface like query-by-example, object query API, automatic class schema recognition allowing programmers to store and retrieve information quickly, simply and reliably. AcornDB enabling high concurrency and speed while providing ACID transactions. AcornDB efficiently caches the data in memory, without exceeding application-specified limits. In this way works with an application to use available JVM resources while providing access to very large data sets.
Go To AcornDB
|BlobDB is a JDBC/SQL like database engine build on Google App Engine datastore. BlobDB has a build in WebService for clients that are not running on Google App Engine. BlobDB is very small and can be embed in non GAE java application as \"in memory only\" database.
Go To BlobDB
|jiql is a Java database for Cloud computing. The database is accessed
via a jdbc client. The data is actually stored
in a cloud-based data store, such as Google's BigTable.
The fact is Google App Engine at present only supports python. Java
programmers need not be excluded,
as jiql provides a way to at least utilize Google's BigTable. By
uploading the jiql python controller (jiql.py) to
Google App Engine (GAE), the jiql.py acts as a gateway between the
jiql database engine and Google's BigTable (GBT).
So a Java application, using standard JDBC calls to the jiql JDBC
client, is able to store critical data in GBT.
As the DataStore sits in the cloud, you essentially have a solution
for distributed database access.
Thus, although you may not be able to host a JAVA program on GAE, you
can still use the Data Store, which is
probably the most important aspect of cloud-computing - that is
scalability and high availability.
Go To jiql
|Neo4j is a graph database. It is an embedded, disk-based, fully transactional Java persistence engine that stores data structured in graphs rather than in tables. A graph (mathematical lingo for a network) is a flexible data structure that allows a more agile and rapid style of development.
Go To Neo4j