EliasDB is a graph-based database that aims to provide a lightweight solution for projects which want to store their data as a graph. Build on top of a custom key-value store that supports transactions and memory-only storage. Data is stored in nodes (key-value objects) which are connected via edges. Stored graphs can be separated via partitions. Stored graphs support cascading deletions - delete one node and all its "children". All stored data is indexed and can be quickly searched via a full text phrase search. EliasDB has a GraphQL interface which can be used to store and retrieve data. For more complex queries EliasDB has an own query language called EQL with an sql-like syntax. Includes a scripting interpreter to define alternative actions for database operations or writing backend logic. Written in Go from scratch. Only uses gorilla/websocket to support websockets for GraphQL subscriptions. The database can be embedded or used as a standalone application.
Features
- The database can be embedded or used as a standalone application
- You can download a pre-compiled package for Windows (win64) or Linux (amd64)
- Written in Go from scratch
- EliasDB has a GraphQL interface which can be used to store and retrieve data
- When used as an embedded database it supports transactions with rollbacks
- Stored graphs can be separated via partitions