For a graph database for complex data relationships, the strongest matches are angel-ml/angel (Angel is a distributed graph computation engine integrated with), graphframes/graphframes (GraphFrames is a library built on Apache Spark that) and apache/spark (Apache Spark includes the GraphX library offering distributed graph). thinkaurelius/titan and google-deepmind/graph_nets round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
We curate open-source GitHub repositories matching “graph computing”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.
Angel is a distributed machine learning framework and graph computation engine designed to train predictive models and execute algorithms across a cluster of servers. It functions as a distributed parameter server that synchronizes model weights and gradients across multiple machines to handle massive datasets. The system provides a production environment for model inference deployment to provide real-time predictions for end users. It integrates with Spark to run machine learning workflows and data processing pipelines through a compatible interface. The framework covers distributed graph c
Angel is a distributed graph computation engine integrated with Spark, making it a suitable choice for large-scale graph processing, though its primary focus is machine learning and its built-in graph algorithm library is not prominently featured.
GraphFrames is a library built on Apache Spark that provides DataFrame-based graph processing with a rich set of distributed graph algorithms and a vertex-centric Pregel API, making it a comprehensive choice for large-scale graph computations with multi-language support.
Apache Spark is a unified distributed data processing engine designed for large-scale data analysis and computation graphs. It functions as a distributed machine learning framework, a graph processing system, a real-time stream processor, and a SQL analytics engine. The system enables the execution of distributed SQL querying, large-scale graph analysis, and real-time stream analytics across clusters of machines. It also provides a scalable environment for implementing machine learning algorithms and predictive model development on massive datasets. The engine incorporates relational query e
Apache Spark includes the GraphX library offering distributed graph processing with a Pregel API, built‑in algorithms, and seamless integration with its engine and multi‑language support (Java, Python, Scala), making it a capable choice for large‑scale graph computations.
Titan is a distributed graph database and computing engine designed for storing and querying massive datasets of interconnected nodes and edges across multi-machine clusters. It functions as a scalable graph storage layer and transactional store, providing a framework for executing large-scale graph processing jobs and deep traversals. The system is distinguished by its pluggable storage backend, which decouples the graph engine from the physical persistence layer. It utilizes vertex-cut data partitioning to balance processing loads and a set-cardinality property model that allows single prop
Titan is a distributed graph database with a computing engine for large-scale graph processing, but its primary identity is a storage-focused database rather than a dedicated graph processing framework with explicit Pregel or algorithm library support.
graph_nets is a graph-structured deep learning framework and library for building message-passing neural networks. It provides tools for designing architectures that operate on nodes and edges to process and reason about data structured as graphs using TensorFlow. The framework implements a message-passing paradigm for iterative information exchange between nodes. This approach enables the development of models that can reason about complex graph-structured inputs for tasks such as path-finding and sorting, or serve as a predictor for the future states and trajectories of physical systems.
graph_nets is a deep learning framework for graph neural networks and message-passing, not a general-purpose graph processing framework for large-scale graph algorithms like Pregel or with Spark/Hadoop integration.
NetworkX is a Python library designed for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. It provides a comprehensive framework for modeling relationships between entities as graphs, directed graphs, or multigraphs, allowing users to attach arbitrary metadata and properties to nodes and edges. The library distinguishes itself through a modular architecture that decouples graph analysis logic from data storage, utilizing nested dictionaries and adjacency lists to manage topology. It features a pluggable backend system that delegates computat
NetworkX is a powerful Python graph analysis library for single-machine complex network study, but it lacks distributed processing, the Pregel model, and Spark/Hadoop integration, so it does not fit the large-scale graph processing framework you need.
JanusGraph is a distributed, elastically scalable graph database designed to store and query highly connected data across a cluster of machines. It supports the property graph data model with ACID consistency and integrates multi-model search capabilities including geo, numeric range, and full-text queries. The database also includes a Graph OLAP engine for running batch analytics and global graph computations on large datasets using the Hadoop framework. The project distinguishes itself through a masterless cluster architecture that eliminates single points of failure, allowing every node to
JanusGraph is a distributed graph database that includes a Graph OLAP engine for batch analytics and global graph computations using Hadoop, so it supports large-scale graph processing but its core identity is a graph database rather than a dedicated graph processing framework.
Guava is a Java standard library extension and utility toolkit that provides optimized data structures, concurrency tools, and core extensions. It serves as a comprehensive set of helpers for Java development, focusing on reducing repetitive boilerplate logic. The project is distinguished by its specialized implementations of immutable collections, which ensure thread safety and data consistency by preventing accidental modification. It also includes a dedicated graph data structure library for modeling and traversing networks of interconnected nodes and edges, alongside advanced collection t
Guava is a Java utility library with an in-memory graph data structure for modeling networks, but it is not a distributed graph processing framework and lacks the required large-scale, Pregel, and Spark/Hadoop integration features.
This is a collection of classical algorithms and data structures implemented as a header-only C++ library. It provides a suite of tools for general algorithm implementation, including data structure management, graph theory analysis, and string processing. The library is distinguished by its specialized toolkits for cryptographic hashing and encoding, featuring implementations of MD5, SHA-1, and Base64. It also includes advanced capabilities for high-performance string processing via suffix trees and arrays, as well as computational number theory for primality testing and arbitrary-precision
This is a general-purpose C++ algorithm and data structure library that includes some graph algorithms, but it is not a distributed graph processing framework with Pregel support, Spark integration, or multi-language APIs, so it falls short of the large-scale graph computation tools you are looking for.