问题域/PD-293

多后端存储抽象

Multi-Backend Storage Abstraction

统一存储接口抽象,支持多种后端(SQL/NoSQL/向量库/图数据库)插件化切换

子问题

1.存储接口标准化

2.后端注册与发现

3.环境变量校验

4.数据迁移兼容

5.槽位兼容性校验(防止 KV 实现误配到 Graph 槽位)

6.默认后端与非默认后端的加载性能差异处理

7.多租户 namespace×workspace 二维数据隔离

各项目的解法1 solutions

Signals

横向对比

维度LightRAG
存储分层四层 ABC:KV / Vector / Graph / DocStatus,职责严格分离
注册机制STORAGES 静态字典 + STORAGE_IMPLEMENTATIONS 兼容性矩阵双重校验
加载策略默认后端直接 import + 非默认 lazy_external_import 双模式
环境校验STORAGE_ENV_REQUIREMENTS 前置 fail-fast,启动时即检查缺失变量
后端数量18 个实现覆盖 JSON/Redis/PG/Mongo/Neo4j/Milvus/Qdrant/Faiss/Memgraph
数据隔离namespace × workspace 二维隔离,同一后端可承载多租户多数据类型
渐进优化BaseGraphStorage 提供 5 个 batch 默认实现,子类可选择性覆盖

最佳实践

1.四层存储分离(KV/Vector/Graph/DocStatus)

2.lazy import减少启动依赖

3.默认后端直接 import + 非默认 lazy import 双模式平衡启动速度

4.batch 方法提供默认逐条实现,新后端可渐进优化

5.兼容性矩阵 + 环境变量需求表双重前置校验