|
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:
-
Open Source Database Applications Comparison Matrix
- (MySQL, PostgreSQL, Derby, H2)
-
Open Source Databases Comparison
- (PostgreSQL, MySQL, Derby, HSQLDB, H2)
-
Open Source Database Feature Comparison Matrix
- (Derby, MySQL, PostgreSQL, One$DB)
|