LAGraph is a Scala API that supports the implementation of scalable graph algorithms using algebraic techniques. Its distinguishing characteristics are:
- Support for both conventional and custom semirings
- Support for both primitive and custom types
- Multiple execution modes, including Spark and pure Scala.
- Automatic optimization based on data and cluster characteristics to ensure both efficiency and scalability.
LAGraph is evolving, while several classical algorithms have been implemented on top of LAGraph, much work still needs to be done before it is ready for production.
To get started visit Quick Start section of the LAGraph Documentation.
For Sbt:
resolvers ++= Seq(
"sonatype-snaphots" at "https://oss.sonatype.org/content/repositories/snapshots"
)
libraryDependencies += "com.github.ibm" %% "lagraph-core" % "0.1.0-SNAPSHOT"
For Maven:
<dependencies>
<dependency>
<groupId>com.ibm.github</groupId>
<artifactId>lagraph-core</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>sonatype-snapshots</id>
<name>Sonatype Public</name>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
Interested in contributing? Please visit Contributing.
Some core issues are currently documented in the issues section of the LAGraph Documentation.