Expand description
IssunDB is an embedded graph database with vector search, full-text search, and hybrid retrieval.
This is the main crate of IssunDB, and exposes the Graph type, Cypher query execution,
vector search, full-text search, and hybrid retrieval APIs. Application code, bindings,
and tools depend on this crate only; the internal crates (issundb-core, issundb-vector,
issundb-text, issundb-retrieval, and issundb-cypher) are not part of
the stable API.
§Entry Points
Graphis the central handle. Open it withGraph::open, then use its methods for node and edge CRUD, adjacency, and graph algorithms.GraphQueryExtadds Cypher execution (query,query_with_params, andexplain) toGraph.VectorGraphExtadds vector indexing and search toGraph.TextGraphExtandTextIndexExtadd full-text indexing and search.retrieve,retrieve_with, andretrieve_hybridrun hybrid retrieval over vector hits, text hits, and graph expansion.
§Working with Query Results
Query parameters and Record values use serde_json::Value. The
serde_json crate is re-exported as issundb::serde_json so
callers do not need to track a separate, version-compatible dependency.
Re-exports§
pub use serde_json;
Structs§
- Bm25
Scorer - BM25 (Okapi BM25) relevance scorer with default parameters k1 = 1.2, b = 0.75.
- Directed
Neighbor Entry - A neighbor entry with a direction flag, returned by
crate::Graph::all_neighbors. - Edge
Record - Stored in the
edgesLMDB sub-database as msgpack bytes. - Graph
- The graph database handle. Cheap to clone: all state is behind
Arc. - Hit
- A single result from vector search.
- Hybrid
Retrieve Options - Options for
retrieve_hybrid. - Neighbor
Entry - The result of a single adjacency lookup entry returned by
crate::Graph::out_neighborsandcrate::Graph::in_neighbors. - Node
Record - Stored in the
nodesLMDB sub-database as msgpack bytes. - Procedure
- A table-backed procedure.
rowseach containinputs.len() + outputs.len()cells: the first segment matches the declared inputs, the second the outputs. - Procedure
Registry - A runtime registry of procedures available to
CALL. - Query
Result - The tabular result of a Cypher query execution.
- ReadTxn
- A read-only transaction on the graph.
- Record
- An individual row in the query result table.
- Retrieve
Options - Options for
retrieve_with. - Subgraph
- A subgraph extracted by a retrieval call.
- TextHit
- A single ranked full-text search result.
- Text
Search Options - Options for full-text search.
- TfIdf
Scorer - TF-IDF relevance scorer. Lighter than BM25; no length normalization.
- Triangle
Count Spec - Pattern description for
Graph::count_triangle_cycles: the directed cycle(a)-[t1]->(b)-[t2]->(c)-[t3]->(a)with an optional relationship type per hop and an optional label per node variable.Nonemeans unconstrained. - Vector
Index Options - Construction options for
VectorIndex. - Vector
Search Options - Options for
vector_search_with. - Weighted
Path - A path with an associated total weight, returned by weighted path algorithms.
- Write
Txn - A read-write transaction on the graph.
Enums§
- Boolean
Mode - Boolean candidate-set filtering for multi-term queries.
- Cypher
Error - Structured query engine errors representing all parsing, optimization, planning, and runtime execution faults.
- Cypher
Type - The declared Cypher type of a procedure argument or output field.
- Degree
Direction - The direction of edges to count for degree centrality.
- Error
- Fusion
Strategy - Strategy for fusing vector and text relevance scores.
- Language
- Supported languages for Full-Text Search indexing and stemming.
- Prop
Value - A typed property value used in index lookups and range queries.
- Retrieval
Error - Structured errors representing all hybrid retrieval faults.
- Text
Error - Vector
Error - Structured errors representing all vector search and indexing faults.
- Vector
Metric - Distance metric for the HNSW index.
- Vector
Quantization - Quantization format for in-memory vector storage.
Traits§
- Graph
Query Ext - Extension trait to execute Cypher queries on the
Graphhandle. - Scorer
- Relevance scoring strategy for full-text search.
- Text
Graph Ext - Full-text search operations for
Graph. - Text
Index Ext - Text index lifecycle operations for
Graph. - Vector
Graph Ext - Vector search operations for
Graph.
Functions§
- retrieve
- Convenience wrapper: vector search to k seeds, then
hops-hop BFS expansion to subgraph materialization. - retrieve_
hybrid - Hybrid retrieval: merges vector search seeds with full-text search seeds,
fuses their scores using
opts.fusion, then expands via BFS. - retrieve_
with - Full retrieve with configurable options.