LEADING OPEN SOURCE LEGACY RELATIONAL MODEL DATABASES
PostgreSQL is a powerful, open source relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness. It runs on all major operating systems, including Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), and Windows. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL92 and SQL99 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation.
An enterprise class database, PostgreSQL boasts sophisticated features such as Multi-Version Concurrency Control (MVCC), point in time recovery, tablespaces, asynchronous replication, nested transactions (savepoints), online/hot backups, a sophisticated query planner/optimizer, and write ahead logging for fault tolerance. It supports international character sets, multibyte character encodings, Unicode, and it is locale-aware for sorting, case-sensitivity, and formatting. It is highly scalable both in the sheer quantity of data it can manage and and in the number of concurrent users it can accommodate. There are active PostgreSQL systems in production environments that manage in excess of 4 terabytes of data. Some general PostgreSQL limits are included in the table below.
SQLite is a small C library that implements a self-contained, embeddable, zero-configuration SQL database engine. Features include:
– Transactions are atomic, consistent, isolated, and durable (ACID) even after system crashes and power failures.
– Zero-configuration – no setup or administration needed.
– Implements most of SQL92. (Features not supported)
– A complete database is stored in a single disk file.
– Database files can be freely shared between machines with different byte orders.
– Supports databases up to 2 terabytes (241 bytes) in size.
– Sizes of strings and BLOBs limited only by available memory.
– Small code footprint: less than 250KiB fully configured or less than 150KiB with optional features omitted.
– Faster than popular client/server database engines for most common operations.
– Simple, easy to use API.
– TCL bindings included. Bindings for many other languages available separately.
– Well-commented source code with over 95% test coverage.
– Self-contained: no external dependencies.
– Sources are in the public domain. Use for any purpose.
The SQLite distribution comes with a standalone command-line access program (sqlite) that can be used to administer an SQLite database and which serves as an example of how to use the SQLite library.
MariaDB is based on MySQL and is available under the terms of the GPL v2 license. It’s developed by the MariaDB community with Monty Program Ab as its main steward.
MariaDB is kept up to date with the latest MySQL release from the same branch. In most respects MariaDB will work exactly as MySQL: all commands, interfaces, libraries and APIs that exist in MySQL also exist in MariaDB. There is no need to convert databases to switch to MariaDB. MariaDB is a true drop in replacement of MySQL! Additionally, MariaDB has a lot of nice new features that you can take advantage of.
OTHER OPEN SOURCE LEGACY RELATIONAL MODEL DATABASES
Firebird is a relational database offering many ANSI SQL-92 features that runs on Linux, Windows, and a variety of Unix platforms. Firebird offers excellent concurrency, high performance, and powerful language support for stored procedures and triggers. It has been used in production systems, under a variety of names since 1981.
Firebird is a commercially independent project of C and C++ programmers, technical advisors and supporters developing and enhancing a multi-platform relational database management system based on the source code released by Inprise Corp (now known as Borland Software Corp) under the InterBase Public License v.1.0 on 25 July, 2000.
Apache Derby is an open source relational database implemented entirely in Java. It has a small footprint that makes it easy to embed in any Java-based application, but it also supports the more familiar client/server mode. It is based on the Java, JDBC, and SQL standards, making code developed more portable to standards-compliant databases.
EnterpriseDB is an enterprise-class relational database management system (RDBMS) that is built on PostgreSQL, the world’s most advanced open source database. EnterpriseDB is compatible with Oracle applications, reliable and scalable for high-volume, mission-critical enterprise use, and affordable.
EnterpriseDB Advanced Server is a complete product suite that includes the following components:
* Database Server – The RDBMS engine
* Replication Server – Asynchronous master-slave replication
* DBA Management Server – Monitoring, performance profiling, and reporting
* Developer Studio – Graphical console for developers and DBAs
* Procedural Language Debugger – Interactive debugger for stored procedures
* Client Connectors – Access from various programming environments
* Oracle Migration Toolkit – Transfer schemas, logic, and data to EnterpriseDB
* Reporting Tools – JasperReports engine and graphical report designer
Cafeterra is a message queue-based EAI project with a Web user interface for designing, processing, and monitoring inter-application data flows. Supported connectors are based on an RDBMS, flat files (CSV, fixed length record, XML, HL7, HTML, etc.), LDAP, and SOAP, with others planned. The main features are message tracking and archival, joining
HSQLDB (HyperSQL DataBase) is the leading SQL relational database engine written in Java. It offers a small, fast multithreaded and transactional database engine with in-memory and disk-based tables and supports embedded and server modes. It includes a powerful command line SQL tool and simple GUI query tools.