Contents
- MySQL
- PostgreSQL
- SQLite
- Apache Hive
- MariaDB
- Firebird
- HyperSQL
- H2
- Apache Derby
- OpenLink Virtuoso
- MemSQL
- Apache Drill
- Percona Server
- MonetDB
- CUBRID
- Apache Phoenix
- Presto
- Apache Tajo
- EffiProz
- h2sharp
- SmallSQL
- SQL::Statement
- tinySQL
MySQL
The world’s most popular open source database
Language: C, C++
Connectors
PostgreSQL
The world’s most advanced open source database
Language: C
Connectors
SQLite
SQLite is a in-process library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine
Language: C
Connectors
Apache Hive
The Apache Hive ™ data warehouse software facilitates querying and managing large datasets residing in distributed storage.
Hive provides a mechanism to project structure onto this data and query the data using a SQL-like language called HiveQL.
At the same time this language also allows traditional map/reduce programmers to plug in their custom mappers and reducers when it is inconvenient or inefficient to express this logic in HiveQL.
Language: Java
Connectors
MariaDB
One of the most popular database servers.
Made by the original developers of MySQL.
Guaranteed to stay open source.
Language: C
Connectors
Firebird
Firebird is a relational database offering many ANSI SQL standard 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.
Language: C, C++
Connectors
HyperSQL
HSQLDB (HyperSQL DataBase) is the leading SQL relational database software 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.
- Supports most of ANSI-92 SQL. Embedded or server use.
- Can use text tables
- TCP and HTTP servers
- SQL Language
- Supports several transactional models
Language: Java
Connectors
- JDBC
H2
The main features of H2 are:
- Very fast, open source, JDBC API
- Embedded and server modes; in-memory databases
- Browser based Console application
- Small footprint: around 1.5 MB jar file size
Language: Java
- Embedded and server modes. ~1Mb footprint
- H2 Console
- TCP, HTTP and PostgreSQL servers
- CSV support
- Built in connection pool
- Full-text search
Connectors
Apache Derby
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.6 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.
Language: Java
- ~2.6Mb footprint.
- Quick Start
- Can be used embedded or client-server
- Includes a command line, ij
- Apache Derby Papers
- SQL language reference
Connectors
OpenLink Virtuoso
At core, Virtuoso is a high-performance object-relational SQL database.
As a database, it provides transactions, a smart SQL compiler, powerful stored-procedure language with optional Java and .Net server-side hosting, hot backup, SQL-99 support and more.
It has all major data-access interfaces, such as ODBC, JDBC, ADO .Net and OLE/DB.
Language: C++
- Web server
- SOAP
- REST
- WS-*
- BPEL
- WebDAV
- SPARQL
Connectors
MemSQL
MemSQL is a high-performance, in-memory database that combines the horizontal scalability of distributed systems with the familiarity of SQL.
Language: C, C++
Apache Drill
Schema-free SQL Query Engine for Hadoop, NoSQL and Cloud Storage
Language: Java
Connectors
Percona Server
Is a free, fully compatible, enhanced, open source drop-in replacement for MySQL that provides superior performance, scalability and instrumentation.
With over 1,900,000 downloads, Percona Server’s self-tuning algorithms and support for extremely high-performance hardware delivers excellent performance and reliability.
Language: C, C++
Connectors
MonetDB
For high-performance applications in data mining, OLAP, GIS, XML Query, text and multimedia retrieval
Connectors
CUBRID
Object-relational database management system (DBMS) optimized for Web services
Langauge: C, C++
- Includes a command line, CSQL
- HA
- Sharding
- CUBRID SQL Guide
Connectors
Apache Phoenix
Apache Phoenix is a relational database layer over HBase delivered as a client-embedded JDBC driver targeting low latency queries over HBase data.
Apache Phoenix takes your SQL query, compiles it into a series of HBase scans, and orchestrates the running of those scans to produce regular JDBC result sets.
The table metadata is stored in an HBase table and versioned, such that snapshot queries over prior versions will automatically use the correct schema.
Direct use of the HBase API, along with coprocessors and custom filters, results in performance on the order of milliseconds for small queries, or seconds for tens of millions of rows.
Language: Java
Connectors
- JDBC
Presto
Presto is an open source distributed SQL query engine for running interactive analytic queries against data sources of all sizes ranging from gigabytes to petabytes.
Presto was designed and written from the ground up for interactive analytics and approaches the speed of commercial data warehouses while scaling to the size of organizations like Facebook.
Connectors
Apache Tajo
Language: Java
Apache Tajo is a robust big data relational and distributed data warehouse system for Apache Hadoop.
Tajo is designed for low-latency and scalable ad-hoc queries, online aggregation, and ETL (extract-transform-load process) on large-data sets stored on HDFS (Hadoop Distributed File System) and other data sources.
By supporting SQL standards and leveraging advanced database techniques, Tajo allows direct control of distributed execution and data flow across a variety of query evaluation strategies and optimization opportunities.
Connectors
EffiProz
C#
- Pure C# embedded database. Similar to HSQLDB.
- Documentation
- EffiProzSL is the Silverlight version.
h2sharp
An ADO.NET wrapper for the H2 Database Engine written in C#
Language: Java
- Uses IKVM.NET
Connectors
- ADO.NET
SmallSQL
SmallSQL is small, fast, embeddable, SQL 99 conformance, platform independent and
100% pure Java
Language: Java
Connectors
- JDBC
SQL::Statement
The SQL::Statement module implements a pure Perl SQL parsing and execution engine.
While it by no means implements full ANSI standard, it does support many features including column and table aliases, built-in and user-defined functions, implicit and explicit joins, complex nested search conditions, and other features.SQL::Statement is a small embeddable Database Management System (DBMS).
This means that it provides all of the services of a simple DBMS except that instead of a persistent storage mechanism, it has two things:
1) an in-memory storage mechanism that allows you to prepare, execute, and fetch from SQL statements using temporary tables and
2) a set of software sockets where any author can plug in any storage mechanism.There are three main uses for SQL::Statement.
One or another (hopefully not all) may be irrelevant for your needs:
1) to access and manipulate data in CSV, XML, and other formats
2) to build your own DBD for a new data source
3) to parse and examine the structure of SQL statements.
Language: Perl
- Pure Perl SQL parsing and execution engine
- Acts as an abstract base class for RDBMS implementations
tinySQL
tinySQL is a SQL engine written in Java.
It uses dBase format files compatible with MS Excel.
tinySQL comes with a command line interpreter which you can use to create, drop, or update tables.
Language: Java
- Java SQL engine
- Uses dBase format files