hamsterdb Embedded Storage is an embedded database engine written in ANSI-C. It includes B+Trees with variable length keys and records. It supports in-memory databases and endian-independent files, database cursors, multiple databases in one file, "record number" databases, and duplicate keys. hamsterdb is very fast and highly configurable. It compiles and runs on Unix platforms, Linux, Microsoft Windows, and Windows CE.
MUSCLE (Multi User Server Client Linking Environment) is an N-way messaging server and networking API. It includes client-side networking APIs for various languages, including C, C++, C#, Delphi, Java, and Python. MUSCLE lets programs communicate over a network via streams of serialized Message objects. The included server program ("muscled") lets its clients message each other and store information in its server-side hierarchical database. The database supports flexible queries via hierarchical wildcarding, and "live" updates via a subscription mechanism.
GT.M is a high end platform for developing transaction processing database applications. Individual database files in the terabyte range are supported; a logical database can consist of many files. It provides full support for ACID transactions using a Software Transaction Memory (STM) programming model and optimistic concurrency control. The GT.M data model is hierarchical associative memory (i.e. multi-dimensional arrays) that imposes no restriction on the data types of the indexes or content, nor any restriction on the schema is that imposed by the application. Such databases are also referred to as "document oriented", "schemaless", or "schema-free".
OpenLink Virtuoso is a scalable, high-performance SQL-200n compliant object-relational database engine. It provide sophisticated database management for SQL, XML, and RDF. All interaction with Virtuoso occurs via its support of industry standard query languages, protocols, APIs, and data formats such as: ODBC, JDBC, OLE-DB, ADO.NET, XMLA, SQL, SPARQL, XQuery, SOAP, HTTP, WebDAV, SyncML, Atom (Publishing and Syndication), RSS, RDF, and more.
PostGIS adds support for geographic objects to the PostgreSQL object-relational database. In effect, PostGIS "spatially enables" the PostgreSQL server, allowing it to be used as a backend spatial database for geographic information systems (GIS), much like ESRI's SDE or Oracle's Spatial extension.
libdbi implements a database-independent abstraction layer in C, similar to the DBI/DBD layer in Perl. Writing one generic set of code, programmers can leverage the power of multiple databases and multiple simultaneous database connections by using this framework. The plugin architecture allows for new database drivers to be easily added by a third party with flexible licensing.
GetData is a library that provides an API to interface with dirfile databases. The dirfile database format is designed to provide a fast, scalable format for storing and reading binary, synchronously-sampled, time-ordered data. GetData was originally written for the BOOMERanG and BLAST experiments as a data format suitable for use for both quick-look and data reduction. It is now used by many other cosmological and astrophysical experiments including ACT, Planck, Spider, Keck, as well as other projects.
QOF (Query Object Framework), provides a set of C Language utilities for performing generic structured complex queries on a set of data held by a set of C/C++ objects. This framework is unique in that it does not require SQL or any database at all to perform the query. Thus, it allows programmers to add query support to their applications without having to hook into an SQL database.
Berkeley DB (libdb) is a programmatic toolkit that provides embedded database support for both traditional and client/server applications. It includes b+tree, queue, extended linear hashing, fixed, and variable-length record access methods, transactions, locking, logging, shared memory caching, database recovery, and replication for highly available systems. DB supports C, C++, C#, Java, PHP, and Perl APIs. It supports key-value pair (NoSQL), SQL, and Java Object formatted data. It is available for a wide variety of Unix platforms as well as QNX, Android, Mac OS X, and several varieties of Windows.