20+ Free and Open Source Graph Database


Free and Open Source Graph Database 2015

Graph databases are primarily concerned with nodes and the connections between them (usually called edges). They tend to be used for their high performance and their natural ability to model rich data (rich in relationships). Some of these are free and others open source graph database.

ArangoDB is a distributed free and open-source database with a flexible data model for documents, graphs, and key-values. Its query language AQL (ArangoDB Query Language) supports joins, graph queries, list iteration, results filtering, results projection, sorting, grouping, aggregate functions, unions and intersections. Transactions in ArangoDB are atomic, consistent, isolated, and durable (ACID).

Bitsy is a small, fast, embeddable, durable in-memory graph database that implements the Blueprints API. It supports ACID transactions, OLTP applications, optimistic concurrency control and data is stored in readable text files.

Blazegraph is a native graph database with support for Blueprints API and RDF/SPARQL. It is a fully open-source high-performance graph database supporting the RDF data model and RDR. Blazegraph operates as an embedded database or over a client/server REST API, and supports high-availability and dynamic sharding. Blazegraph supports both the Blueprints and Sesame APIs.

BrightstarDB runs on Windows, Linux, OSX, Windows Phone, Android and iOS, with a single consistent data file format across all platforms. The core libraries have a small footprint and install with zero configuration for embedded applications. BrightstarDB is an RDF triple store. It does not require the definition of a database schema, and with the RDF data model model you can easily add and integrate data of all shapes. It also implements the standard SPARQL query language, update language and protocol so you can use off-the-shelf client tools to connect to your data stores.

Cayley is an open-source graph inspired by the graph database behind Freebase and Google’s Knowledge Graph. Its goal is to be a part of the developer’s toolbox where Linked Data and graph-shaped data (semantic webs, social networks, etc) in general are concerned. A RESTful API is provided and also offers a built in query editor and visualizer.

Filament is a project for storing and exploiting graph data structures. The core (and existing) element is a graph storage library with default support for SQL through JDBC. The actual storage implementation is pluggable. Added to this is a fluent traversal model that makes it easy to navigate the stored graph in large chunks. In the future, there will be extensions to the storage API to support caching, remoting, etc… and further extensions adding user interface components.

graphd is the back-end database which powers Freebase.com. It is a in-house graph database or tuple store which is written in C and runs on Unix-like machines. It processes graph query language (GQL) queries (translated from the MQL queries submitted through the Freebase API).

GraphDB™ (formerly OWLIM) is a leading RDF Triplestore built on OWL (Ontology Web Language) standards. It stores data in the form of atomic facts expressed as subjects, predicates and objects which have relationships to other facts. Ontotext offers four versions: GraphDB™ Free, GraphDB™ Standard, GraphDB™ Enterprise and GraphDB™ Cloud on AWS. In essence, GraphDB™ is a “semantic repository” using ontologies that allow the repository to automatically reason about the data.

HyperGraphDB is a general purpose, open-source data storage mechanism based on a powerful knowledge management formalism known as directed hypergraphs. While a persistent memory model designed mostly for knowledge management, AI and semantic web projects, it can also be used as an embedded object-oriented database for Java projects of all sizes. Or a graph database. Or a (non-SQL) relational database.

InfoGrid is a Web Graph Database with a many additional software components that make the development of REST-ful web applications on a graph foundation easy. InfoGrid is open source, and is being developed in Java

MapGraph is Massively Parallel Graph processing on GPUs. The MapGraph API makes it easy to develop high performance graph analytics on GPUs. The API is based on the Gather-Apply-Scatter (GAS) model as used in GraphLab. To deliver high performance computation and efficiently utilize the high memory bandwidth of GPUs, MapGraph’s CUDA kernels use multiple sophisticated strategies, such as vertex-degree-dependent dynamic parallelism granularity and frontier compaction.

Neo4j is a fast and scalable native graph database, and one of the most popular. It is fully ACID, comes with a powerful query language, supports hot backups (without taking the database down), ETL capabilities, and clustering.

OhmDB is a NoSQL database for Java that runs in a JVM.

OrientDB is a distributed graph database that supports ACID transactions, HTTP and JSON and replication. It also supports SQL with extensions to manipulate trees and graphs. The community edition is free.

Orly (pronounced “Oh Really”) non-relational database. It’s meant to be fast and to scale for billions of users. It supports optimistic locking and has its own query language called Orlyscript, which can also serve as a general purpose programming language.

sones is an object-orientated graph data storage for a large amount of highly connected semi-structured data in a distributed environment.

Titan is a scalable graph database optimized for storing and querying graphs containing hundreds of billions of vertices and edges distributed across a multi-machine cluster. Titan is a transactional database that can support thousands of concurrent users executing complex graph traversals in real time. It supports ACID and eventual consistency and various big data storage back-ends.

Trinity can run in both embedded (in-process) and distributed mode. In-memory data is kept highly compact. Declarative graph modeling utilities. Declarative network communication modeling utilities. Intuitive object-oriented data manipulation and message passing interfaces. Rich system management and development tools. The Trinity package is currently for intranet access only.

VelocityGraph is an open source C# .NET hybrid NoSQL Graph Database and Object Database that can be Embedded/Distributed.

Vertex is a high performance graph database that supports automatic garbage collection, built on libevent and tokyocabinet. It uses HTTP as it’s communication protocol and JSON as it’s response data format. It is BSD licensed.

Virtuoso is an innovative enterprise grade multi-model data server.. It delivers a platform agnostic solution for data management, access, and integration. Available in an open source edition.

Weaver is a distributed graph store that provides horizontal scalability, high-performance, and strong consistency. It enables users to execute transactional graph updates and queries through a simple python API. Weaver dynamically migrates portions of the graph across shards to maintain graph locality and minimize communication. Weaver also enables users to cache results of graph computation at the nodes.

WhiteDB is a lightweight NoSQL database library written in C, operating fully in main memory. There is no server process. Data is read and written directly from/to shared memory, no sockets are used between WhiteDB and the application program. Data is kept in shared memory by default, making all the data accessible to separate processes. Each database record is a tuple of N elements, encoded in WhiteDB-s simple compact format. You can store both conventional datatypes and direct pointers to records: the latter enables highly efficient traversal of complex data.