Raphtory is an open-source platform for distributed real-time temporal graph analytics, allowing you to load and process large dynamic datasets across time. If you would like a brief summary of what its used for before fully diving into the getting started guide please check out this article from the Alan Turing Institute! For more in-depth info you can watch our most recent talk on Raphtory at NetSciX.
If you like the sound of what we are working on, come join the Slack!
0.5.0 - Raphtory on Pulsar
With the release of 0.5.0 we have completely rebuilt Raphtory to run on top of Apache Pulsar. This has fixed a number of issues faced in prior versions, notably around message back pressure, and introduces many exciting features including integration with Jupyter. This has replaced the now deprecated Akka implementation which will remain available here.
Getting Started
The best way to get started with Raphtory is to visit our ReadTheDocs site where we have tutorials on how to use Raphtory for graph building, analysis, and more.
Note: Raphtory is built with Scala. We recommend using IntelliJ IDE for your code. They have a community version which is free. Follow their guide for installation.
Good entry points for the very beginning are
- Installation - Installation of Pulsar & Raphtory and running your first job locally.
- Building a graph from your data - How to ingest raw data into Raphtory and the basics of modelling your data as a Temporal Graph.
- Six Degrees of Gandalf - A Lord of the Rings themed intro into the world of Graph Algorithms.
- Running Queries - Exploring how to run algorithms throughout the history of your data.
- Analysis In Raphtory - A deeper dive into the underlying analysis model of Raphtory.
Once you are feeling more comfortable with Raphtory you can checkout out
- Raphtory API - We provide a fully documented API for Raphtory with explanations of all included Algorithms (both temporal and static). These algorithms can be used to analyse your datasets once ingested or as a basis to implement your own custom algorithms.
- Getting your data into Jupyter - We are developing a full python client alongside the main scala implementation so that you can attach Raphtory to your favorite data science tools.
- Kubernetes Cluster Deployment - Raphtory can be deployed as a single node or a distributed cluster. For the latter we provide runners to establish the cluster on top of Kubernetes.
Community
- Follow the latest developments on the official Raphtory Twitter
- Join the Slack - we are always happy to answer any questions and chat about the project! Feel free to join the #raphtory-development and #askaway channel to discuss current issues or ask any questions.
Contributors
Want to get involved? Please join the Raphtory Slack group and speak with us on how you could pitch in!
License
Raphtory is licensed under the terms of the Apache License (check out our LICENSE file).