www.CrispLogic.com
 
Useful Links:

Java Resources

Developer Tools

Frameworks

Databases

Organizations

Tutorials & Articles

Databases

The enterprise segment of the database market is dominated by the major commercial database vendors (Oracle, IBM, Sybase, and Microsoft). However, an increasing number of companies are beginning to use open source databases for some of their applications. There is a number of free or low-cost database products that can be considered suitable for both non-commercial and commercial applications and are very popular among developers. The table presented below includes a short description of some of the most widely used free and low-cost database products.

Free and Low-Cost Databases

MySQL

MySQL is the world's most popular open source database software. It is a full-featured database management system that supports a broad subset of the SQL-99 standard, as well as extensions. MySQL has become the preferred choice for Web applications. It is used by many of the world's largest and fastest-growing organizations. MySQL is the database component of LAMP (Linux, Apache, MySQL, PHP/Perl/Python), a popular open source enterprise software stack.

The MySQL database has been developed by the Swedish company MySQL AB that was acquired by Sun Microsystrems in January 2008. Sun Microsystems was acquired by Oracle Corporation in January 2010. MySQL is currently marketed as MySQL Enterprise Server and is also as available as a free database - MySQL Community Server.

MySQL comes with a good GUI tool known as MySQL Workbench that can be used to visually design, generate, and manage databases.

Another popular tool developed for MySQL is phpMyAdmin, a free web-based administration tool written in PHP.

PostgreSQL

PostgreSQL is a powerful, open source object-relational database system known for its reliability and data integrity. It is fully ACID compliant and has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). PostgreSQL includes most SQL-92 and SQL-99 data types and also supports storage of binary large objects. It runs on all major operating systems and has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, and ODBC.

PostgreSQL is considered the world's most advanced open source database. It has been designed from the perspective of a database administrator, with strong emphasis on data integrity, security, reliability, standards, and performance. It is also known for its excellent documentation. As an enterprise class database, PostgreSQL is highly scalable both in terms of the quantity of data and the number of concurrent users.

PostgreSQL can be managed through pgAdmin III a graphical front-end administration and development tool supported on most popular computer platforms. Another popular tool developed for PostgeSQL is phpPgAdmin, a free web-based administration tool written in PHP.

PostgreSQL is not controlled by any single company, but has a global community of developers and companies contirbuting to its development.

HSQLDB

HSQLDB (HyperSQL DataBase) is a relational database management system written in Java. It has a JDBC driver and a large subset of SQL-92, SQL-99, and SQL:2003 standards. It is a fast database engine with a very small footprint. It is available in embedded and server modes. HSQLDB comes with tools such as a minimal web-server, in-memory query and management tools (can be run as applets), and a number of demonstration examples.

The product is currently being used in many Open Source Software projects as well as in commercial products. Its current version is considered very stable and reliable. HSQLDB is completely free to use and distribute under licenses based on the standard BSD license.

The HSQLDB open source project was started in 2001 as the continuation the Hypersonic SQL project.

H2 Database Engine

H2 Database Engine is an open source Java database written in Java. H2 has a very small footprint and a very fast database engine. It supports standard SQL and JDBC API. H2 has strong security features. It is available in both embedded and server modes. It comes with a browser based console application.

Although H2 has been developed by the original developer of Hypersonic SQL, it has been written from scratch and does not share any code with Hypersonic SQL.

H2 has a "commercial friendly" open source license that does not cover the source files containing only the application code.

Apache Derby

Apache Derby is an open source relational database implemented entirely in Java. It was previously known as Cloudscape and was released by IBM as an open source project managed by the Apache Software Foundation in 2004. Derby has a very small footprint. It has an embedded JDBC driver that lets you embed Derby in any Java-based solution. It is also available as a client/server product.

IBM DB2 Express-C

IBM DB2 Express-C is a no-charge community edition of the DB2 data server. DB2 Express-C can be setup quickly, is easy to use, and includes self-managing capabilities. It also embodies all of the core features of the more scalable DB2 editions, including the revolutionary pureXML technology for powering a new breed of Web 2.0 and SOA based solutions.

DB2 Express-C is available for download and deployment at no charge. Additional functionality, such as High Availability clustering and Data Replication are available only as part of yearly subscription.

One$DB

One$DB is the open source version of Daffodil DB, a popular Java RDBMS developed by Daffodil Software. It is free for use in any environment, including commercial applications. One$DB is a robust Java Database and has the same features and functionality as Daffodil DB. The only difference is in their licensing policy.

One$DB has a small footprint, zero administration and JDBC/ODBC support. It is platform independent and is available in both embedded and network editions.

Oracle Berkeley DB

Oracle Berkeley DB is a family of open source, embeddable databases originally developed by Sleepycat Software and acquired by Oracle in 2006. The Oracle Berkeley DB family includes three products: Berkeley DB, Berkeley DB Java Edition, and Berkeley DB XML. These databases offer extreme performance, zero administration, and are highly configurable.

Oracle's open source license permits the use of Berkeley DB in open source projects or in applications that are not distributed to third parties. Oracle's commercial license permits closed-source distribution of an application to third parties and provides business assurance.

Oracle Database 10g Express Edition

Oracle Database 10g Express Edition (Oracle Database XE) is an entry-level, small-footprint database based on the Oracle Database 10g Release 2 code base that is free to develop, deploy, and distribute. Oracle Database XE is simple to administer. It is a great starter database for developers who need a free database or independent software vendors who want a database to distribute free of charge. Oracle Database XE has some technical limitations. It can store up to 4GB of user data and use only up to 1GB of memory.

Oracle Database XE has an intuitive browser-based user interface, known as Database Home Page, for administering the database, running scripts and queries, building Web-based applications, and other functions.

Some of the above listed database products are compared in following comparison matrices:

 
Copyright 2009-2010 CrispLogic.com