This repository has been archived by the owner. It is now read-only.
Graph Represented Algorithm Implementation Layer
Java
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src
.gitignore
.gitreview
LICENSE
README.md
pom.xml

README.md

GRAIL

Graph Represented Algorithm Implementation Layer

![Build Status](http://builds.syncleus.com/buildStatus/icon?job=GRAIL Core&style=flat) Test Coverage ![Tests Passed](https://img.shields.io/jenkins/t/http/builds.syncleus.com/GRAIL Core.svg?style=flat) Dependency Status

GRAIL is an algorithm implementation layer that allows arbitrary algorithms to be backed, and executed, from a graph database. The backing graph database can be either an on-disk server instance or a purely local in-memory instance. This allows generic tools to be interfaced to accomplish an assortment of extensions such as: distributed processing, visualizations, indexing, graph traversal, SPARQL queries, and much more.

GRAIL uses a native TinkerPop stack, this means it can support virtually every graph database available to you. A few examples of supported Graph Databases are as follows.

TinkerPop also provides several tools which can be used to work with GRAIL backed algorithms.

  • Furnace - Graph analysis utilities
  • Pipes - A data-flow framework for splitting, merging, filtering, and transforming of data
  • Gremlin - A graph query language
  • Blueprints - A standard graph API

Finally, depending on the choice of a graph database backend, it is possible to utilize any of the following features.

  • Elastic and linear scaling capabilities
  • ACID and BASE consistency models
  • Distributed data, replication, high availability, and fault tolerance
  • Faunus Gremlin-based distributed graph analytics, backed by an Hadoop cluster.
  • Direct Apache Hadoop integration providing graph analytics, reporting, and ETL features
  • Indexing and search utilities including: ElasticSearch, Solr, and Lucene

A Titan backend can support all the above features.

Obtaining the Source

The official source repository for GRAIL is located on the Syncleus Gerrit instance and can be cloned using the following command.

git clone http://gerrit.syncleus.com/GRAIL-core

We also maintain a GitHub clone of the official repository which can be found here. Finally Syncleus also hosts an instance of GitLab which has a clone of the repository which can be found here.