All Projects → unipop-graph → Unipop

unipop-graph / Unipop

Licence: apache-2.0
Data Integration Graph

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Unipop

Cypher For Gremlin
Cypher for Gremlin adds Cypher support to any Gremlin graph database.
Stars: ✭ 267 (+45.11%)
Mutual labels:  graph, gremlin, tinkerpop
Exram.gremlinq
A .NET object-graph-mapper for Apache TinkerPop™ Gremlin enabled databases.
Stars: ✭ 84 (-54.35%)
Mutual labels:  graph, gremlin, tinkerpop
Ogre
Clojure library for querying Apache TinkerPop graphs
Stars: ✭ 118 (-35.87%)
Mutual labels:  graph, gremlin, tinkerpop
Janusgraph
JanusGraph: an open-source, distributed graph database
Stars: ✭ 4,277 (+2224.46%)
Mutual labels:  graph, gremlin, tinkerpop
Tinkerpop
Apache TinkerPop - a graph computing framework
Stars: ✭ 1,309 (+611.41%)
Mutual labels:  graph, gremlin, tinkerpop
janusgraph-docker
Yet another JanusGraph, Cassandra/Scylla and Elasticsearch in Docker Compose setup
Stars: ✭ 54 (-70.65%)
Mutual labels:  gremlin, tinkerpop
gizmo
OGM
Stars: ✭ 20 (-89.13%)
Mutual labels:  gremlin, tinkerpop
Gremlin.Net
This repository only contains an outdated version of Gremlin.Net. For newer version head to Apache TinkerPop.
Stars: ✭ 21 (-88.59%)
Mutual labels:  gremlin, tinkerpop
gremlin-ogm
An Object Graph Mapping Library For Gremlin
Stars: ✭ 32 (-82.61%)
Mutual labels:  gremlin, tinkerpop
gremtune
Golang Gremlin Tinkerpop client with AWS Neptune compatibility
Stars: ✭ 23 (-87.5%)
Mutual labels:  gremlin, tinkerpop
Janusgraph.cn
分布式图数据库 JanusGraph 中文社区,关于 JanusGraph 的一切
Stars: ✭ 273 (+48.37%)
Mutual labels:  graph, gremlin
Graph Notebook
Library extending Jupyter notebooks to integrate with Apache TinkerPop and RDF SPARQL.
Stars: ✭ 199 (+8.15%)
Mutual labels:  graph, gremlin
Gremlin Javascript
JavaScript tools for graph processing in Node.js and the browser inspired by the Apache TinkerPop API
Stars: ✭ 209 (+13.59%)
Mutual labels:  gremlin, tinkerpop
jelass
Janus + Elastic Search + Cassandra docker container with SSL Client Certificates implemented.
Stars: ✭ 13 (-92.93%)
Mutual labels:  gremlin, tinkerpop
Gremlin Scala
Scala wrapper for Apache TinkerPop 3 Graph DSL
Stars: ✭ 462 (+151.09%)
Mutual labels:  graph, gremlin
Goblin
A Python 3.5 rewrite of the TinkerPop 3 OGM Goblin
Stars: ✭ 90 (-51.09%)
Mutual labels:  gremlin, tinkerpop
Ferma
An ORM / OGM for the TinkerPop graph stack.
Stars: ✭ 130 (-29.35%)
Mutual labels:  gremlin, tinkerpop
Federation
Apollo Federation
Stars: ✭ 171 (-7.07%)
Mutual labels:  federation
Unity Easinglibraryvisualisation
Front end visualisation of 40 common easing equations.
Stars: ✭ 178 (-3.26%)
Mutual labels:  graph
Geneweb
GeneWeb is an open source genealogy software with a web interface created by Daniel de Rauglaudre.
Stars: ✭ 171 (-7.07%)
Mutual labels:  graph

This project is in active development. A stable version will be released soon.

Unipop

Build Status

Analyze data from multiple sources using the power of graphs.

Unipop is a data Federation and Virtualization engine that models your data as a "virtual" graph, exposing a querying API using the Gremlin GQL (Sql and SPARQL are also available.)

This means you get the benefits of a graph data model without migrating/replicating/restructuring your data, whether its stored in a RDBMS, NoSql Store, or any other data source (see "Customize and Extend" below.)

Why Graphs?

Graphs provide a very "natural" way to analyze your data. The simple Vertex/Edge structure makes it very easy to model complex and varied data, and then analyze it by exploring the connections/relationships in it.

This is especially relevant for a data Federation / Virtualization platform, which integrates a large variety of different data sources, structures, and schemas.

Our chosen GQL is Gremlin, which comes as part of the Apache Tinkerpop framework. Let's compare Gremlin to SQL, the industry standard:

Schema Relationships Flexibility Usability
SQL Structured - Tables and their fields need to be explicitly defined. Joins require knowledge of all relationships (PK/FK), and can become quite complicated. Sql's syntax requires very specific, rigid structures. Queries are loosely-typed "free text", often requiring complicated ORMs.
Gremlin Unstructured - Different structures can be created on the fly. Connections (i.e edges) are "First-class citizens", enabling easy exploration of your data. Queries are written in a pipelined ("functional") syntax, providing considerable flexibility. Host Language embedding. Easier to read, write, find errors, and reuse queries.

The Tinkerpop framework also provides us with other useful features "out of the box":

  • Traversal Strategies - an extensible query optimization mechanism. Unipop utilizes this to implement different performance optimizations.
  • Console & Server - production grade tooling.
  • Language Drivers - JavaScript, TypeScript, PHP, Python, Java, Scala, .Net, Go.
  • Extensible Query Languages - Gremlin, SQL, SPARQL
  • DSL support
  • Testing Framework

Getting started

TBD

Setup

  • Console - a local instance with an interactive Shell for issuing queries.
  • Server - a web server with WebSocket & HTTP APIs.
  • Embedded - run Unipop inside any JVM based application.

Configure

Add your data sources to Unipop's configuration. Configuring a source entails mapping its schema to a "property graph" model (i.e. vertices & edges). Unipop is built in an extensible way, enabling many different mapping options.

Query

Console, Server, Embedded, or Language drivers

Customize & Extend

TBD

How it works

TBD

Technical details.

Contributing

TBD

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].