A graph database written in rust. IndraDB consists of a server and an underlying library. Most users would use the server, which is available via releases as pre-compiled binaries. But if you're a rust developer that wants to embed a graph database directly in your application, you can use the library. IndraDB's original design is heavily inspired by TAO, facebook's graph datastore. In particular, IndraDB emphasizes simplicity of implementation and query semantics, and is similarly designed with the assumption that it may be representing a graph large enough that full graph processing is not possible. IndraDB departs from TAO (and most graph databases) in its support for properties. IndraDB offers a variety ways to work with it: as a server with cross-language support, as a rust library, and via CLI. What follows are a few examples of each use case.
Features
- Directed and typed graphs
- JSON-based properties tied to vertices and edges
- Queries with multiple hops, and queries on indexed properties
- Cross-language support via gRPC, or direct embedding as a library
- Pluggable underlying datastores, with several built-in datastores. Postgresql and sled are available separately
- Written in rust! High performance, no GC pauses, and a higher degree of safety