Skip to content

[Storage] Implement high-performance in-memory indexed StatementStore (SPO, POS, OSP) #614

Closed

Description

@remiceres

Summary

Implement a full native indexed in-memory storage in core.next.storage featuring three complete index orders (SPO, POS, OSP) to replace linear scans in InMemoryStatementStore and achieve sub-second execution on complex join queries.

Objectives and Technical Scope

1. Triple and Quad Index Structures

• Implement three primary index arrangements: Subject-Predicate-Object (SPO), Predicate-Object-Subject (POS), and Object-Subject-Predicate (OSP).
• Provide first-class support for named graphs (quads) and default graph partitioning.
• Ensure atomic lookup and range scans returning deterministic iterations.

2. Query Engine Integration

• Wire index-backed statement iterators into core.next.query solution generation pipeline.
• Eliminate linear table scan fallbacks for basic graph pattern matching.

3. Transaction Support

• Provide transactional isolation semantics (isolation of in-flight write operations, commit and rollback guarantees).

Acceptance Criteria

[ ] SPO, POS, and OSP index lookup operations are fully operational.
[ ] Named graphs (quads) and default graphs are isolated and searchable via pattern matchers.
[ ] Complex BGP join queries execute in sub-second times on datasets exceeding 50,000 statements.
[ ] Zero regressions across the W3C conformance suite.

Metadata

Metadata

Assignees

Labels

featureNew feature or capabilityrefactoringInternal code restructuring and architecture cleanup

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions