What is graph computing?

Graph Computing is any computation that abstracts over a graph data structure. Most notably, social networks tend to care about graph properties more deeply than most applications. An early application of graph computing was the PageRank algorithm, which was used to calculate relative authority of websites against each other.

What features of graph computing does Rust support?

In Rust, the Gremlin-rs package implements an Apache TinkerPop Client. Gremlin acts like a query builder in most cases, helping to formulate a graph computation from simple componenents. One could imagine even an entire search engine that is built from the ground up using graph queries. I don't know if that would be feasible, as complicated graph computations can be very expensive. However graph computation is certainly useful in many more narrower cases. So much so that TinkerPop has 26 separate backends already!

What does Gremlin do?

Gremlin helps you construct TinkerPop queries like this:

use gremlin_client::{aio::GremlinClient, Vertex, process::traversal::traversal};
use tokio::stream::StreamExt;

#[tokio::main]
async fn main() -> Result<(), Box<std::error::Error>> {

    let client = GremlinClient::connect("localhost").await?;

    let g = traversal().with_remote_async(client);

    let results = g.v(()).has_label("person").has(("name","Jon")).to_list().await?;   

    println!("{:?}", results);
    Ok(())
}