All Projects → neo4j → trillion-graph

neo4j / trillion-graph

Licence: Apache-2.0 License
A scale demo of Neo4j Fabric spanning up to 1129 machines/shards running a 100TB (LDBC) dataset with 1.2tn nodes and relationships.

Programming Languages

java
68154 projects - #9 most used programming language
Svelte
593 projects
typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to trillion-graph

CyFHIR
A Neo4j Plugin for Handling HL7 FHIR Data
Stars: ✭ 39 (-46.58%)
Mutual labels:  neo4j, graph-database
neo4j.cr
Pure-Crystal implementation of Neo4j's Bolt protocol
Stars: ✭ 29 (-60.27%)
Mutual labels:  neo4j, graph-database
Public-Transport-SP-Graph-Database
Metropolitan Transport Network from São Paulo mapped in a NoSQL graph database.
Stars: ✭ 25 (-65.75%)
Mutual labels:  neo4j, graph-database
neo4j-faker
Use faker cypher functions to generate demo and test data with cypher
Stars: ✭ 30 (-58.9%)
Mutual labels:  neo4j, graph-database
NeoClient
🦉 Lightweight OGM for Neo4j which support transactions and BOLT protocol.
Stars: ✭ 21 (-71.23%)
Mutual labels:  neo4j, graph-database
database-journal
Databases: Concepts, commands, codes, interview questions and more...
Stars: ✭ 50 (-31.51%)
Mutual labels:  neo4j, graph-database
neo4j-rake tasks
Rake tasks for managing Neo4j. Tasks allow for starting, stopping, and configuring
Stars: ✭ 13 (-82.19%)
Mutual labels:  neo4j, graph-database
Helicalinsight
Helical Insight software is world’s first Open Source Business Intelligence framework which helps you to make sense out of your data and make well informed decisions.
Stars: ✭ 214 (+193.15%)
Mutual labels:  neo4j, graph-database
liquigraph
Migrations for Neo4j
Stars: ✭ 122 (+67.12%)
Mutual labels:  neo4j, graph-database
prov-db-connector
PROV Database Connector
Stars: ✭ 15 (-79.45%)
Mutual labels:  neo4j, graph-database
spicedb
Open Source, Google Zanzibar-inspired fine-grained permissions database
Stars: ✭ 3,358 (+4500%)
Mutual labels:  scale, graph-database
boltex
Elixir driver for the neo4j bolt protocol
Stars: ✭ 27 (-63.01%)
Mutual labels:  neo4j, graph-database
Citus
Distributed PostgreSQL as an extension
Stars: ✭ 5,580 (+7543.84%)
Mutual labels:  scale, sharding
angular-neo4j
Neo4j Bolt driver wrapper for Angular
Stars: ✭ 18 (-75.34%)
Mutual labels:  neo4j, graph-database
Dgraph
Native GraphQL Database with graph backend
Stars: ✭ 17,127 (+23361.64%)
Mutual labels:  scale, graph-database
db-sharding
Oracle Sharded database deployment automation and tools for use in client applications.
Stars: ✭ 30 (-58.9%)
Mutual labels:  sharding, scale-out
Movies Python Bolt
Neo4j Movies Example application with Flask backend using the neo4j-python-driver
Stars: ✭ 197 (+169.86%)
Mutual labels:  neo4j, graph-database
Bolt sips
Neo4j driver for Elixir
Stars: ✭ 204 (+179.45%)
Mutual labels:  neo4j, graph-database
ml-models
Machine Learning Procedures and Functions for Neo4j
Stars: ✭ 63 (-13.7%)
Mutual labels:  neo4j, graph-database
GraphDBLP
a Graph-based instance of DBLP
Stars: ✭ 33 (-54.79%)
Mutual labels:  neo4j, graph-database

Discord Discourse users

Demo application instructions

Overview

This repository contains the code necessary to reproduce the results for the Trillion Entity demonstration that was part of the NODES 2021 Keynote presentation. It contains the store generation code we used, the orchestration scripts for the AWS instances that are needed to run the setup, the queries we executed, and the client that performs the latency measurements. Please read this README in its entirety before proceeding, to make sure you have an understanding of the necessary steps.

More Information

Blog post with more behind the scenes information Behind the Scenes of Creating the World’s Biggest Graph Database.

The NODES 2021 Keynote recording showing the Trillion Graph Demo live:

A twitter thread summary of the demo:

How To

What you'll need:

  1. An AWS account with sufficient capacity for the number and type of EC2 instances you'll create, including access to S3. AWS is the default provider this application uses; it should be possible to modify it to use the cloud provider of your choice.
  2. Access to Neo4j Enterprise. Fabric is a Neo4j Enterprise feature, which is distributed under a different license. It needs to be properly installed to your local Maven repository and you can find detailed instructions in the Neo4j Documentation

The directory structure is as follows:

  1. cypher contains the individual cypher queries that were used in the demo
  2. server contains the data generation code and the instance orchestration
  3. client contains the client for the latency measurements
  4. guide contains a Neo4j Browser guide which explains the LDBC schema and queries

Outline

Here we'll describe the basic steps you'll need to take. Detailed instructions are provided further down.

Familiarize yourself with the code.

The code provided should be straightforward to understand. You should take some time to familirize yourself with it, since you'll need to provide information specific to your environment. The main two files to look at are the FabricDataGenerator and AmazonController that you can find under the server directory. The first creates the stores both locally and remotely, and the second orchestrates the AWS Neo4j instances. They are structured as scripts, so you can modify them as you like. You will need to edit the code to execute the various steps and configure the setup to your requirements.

Create the stores

You should first create the Person and Template databases. The first is the full Person shard and the latter is the basis for the Forum shards. Typically, you will create these two locally, upload them to S3, and then orchestrate EC2 instances with the AmazonController to generate en mass Forum shards. Of course, with minimal changes, you can do everything locally, in one step, and then move the databases to the Fabric shards however you prefer.

Instantiate the Shards

The AmazonController class can be used to install and configure Neo4j and the shards. You will need to modify the code to execute the appropriate commands for your setup, but the basic AWS orchestration steps will be the same as for the store generation.

Build, install and run the application

The last step is to locally build and run the UI for the demo. With that, you'll be able to take latency measurements and explore the schema you built.

Generating the stores

AWS Instance Orchestration

Install, build and run the client

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].