2026-06-26 决策:DotSearch / DotVector 不再作为 SonnetDB 之外的独立产品线继续扩张。两者的算法、索引和分词能力已收编为
SonnetDB.Core内部引擎;面向Microsoft.Extensions.VectorData的 SonnetDB 适配已迁移到SonnetDB.Data。
SonnetDB 对外只保留一套数据库体验:
SonnetDB SQL / ADO.NET / HTTP / Studio / CLI / VS Code / Copilot
-> SonnetDB.Core
-> FullText internal engine
-> Vector internal engine
全文索引和 ANN 索引仍是可重建派生数据;table、document、measurement 和 VECTOR 主数据仍由 SonnetDB catalog、WAL、Segment、Compaction、Retention、Backup 和 Restore 生命周期托管。
迁入 SonnetDB.Core:
DotSearch.Core:BM25、倒排索引、query parser、persistent index。DotSearch.Tokenizers.Unicode / Cjk / Jieba:分词器和 Jieba 词典资源。迁入 SonnetDB.Data:
Microsoft.Extensions.VectorData adapter。AddSonnetDBVectorStore(...) DI 扩展。不迁入:
.dvec/ 独立数据库目录和纯向量 collection API。SonnetDB.Core状态:已完成。
已完成:
SonnetDB.Core.csproj 已移除对 modules/DotSearch core/tokenizer 项目的 ProjectReference。src/SonnetDB.Core/FullText。dict.txt / dict.dat 和词典生成流程已迁入 SonnetDB.Core.csproj,并保留原 embedded resource logical name。tests/SonnetDB.Core.Tests/FullText。验收:全文索引、match(...)、bm25_score() 和 unicode / cjk / jieba 分词测试通过。
SonnetDB.Core状态:primitives / indexing 合并与内部命名空间收敛已完成。
已完成:
src/SonnetDB.Core/Vector。SonnetDB.Core.csproj 对 modules/DotVector 的 ProjectReference。System.Numerics.Tensors 包引用,承接 DotVector SIMD 距离计算路径。tests/SonnetDB.Core.Tests/Vector。src/SonnetDB.Core/Vector、VectorDistance、Segment 向量索引 adapter、注释和错误消息已收敛到 SonnetDB.Vector.* / SonnetDB 内置向量引擎叙事。归档边界:
VECTOR 列和 VectorData adapter 建模。验收:VECTOR(dim)、knn(...)、HNSW / IVF / IVF-PQ / Vamana、SDBVIDX2 blob 与重建测试通过。
SonnetDB.Data状态:核心适配已完成。
已完成:
SonnetDBVectorStore / SonnetDBVectorCollection / dynamic collection 和 DI 扩展。DOCUMENT COLLECTION,record key 使用文档 id,record 数据和向量字段存入 JSON document。vector_search(...),供 adapter 和 SQL 用户按 JSON vector path 执行向量检索。边界:
measurement 是时序模型,只用于显式时序 VECTOR(N) 列和 measurement KNN / Hybrid Search;通用 VectorData collection 不默认映射到 measurement。验收:嵌入式和远程 SndbConnection 都可通过 VectorData adapter 使用 SonnetDB。
状态:已完成。
已完成:
modules/DotSearch / modules/DotVector 项目和源码复制步骤。SonnetDB/modules/DotSearch 和 SonnetDB/modules/DotVector 子模块登记。验收:干净 checkout 不需要拉取 DotSearch / DotVector 子模块即可 restore / build SonnetDB;发布包只包含 SonnetDB 系列包。
状态:已完成。
已完成:
src/SonnetDB.Core/FullText 内部命名空间从 DotSearch.* 收敛到 SonnetDB.FullText.*。DotSearch.Tokenizers.Jieba.Resources.* 收敛到 SonnetDB.FullText.Tokenizers.Jieba.Resources.*。SonnetDB.Core.Tests.FullText.*。验收:当前源码和测试不再包含 DotSearch.* / DotVector.* 命名空间引用;dotnet build SonnetDB.slnx --configuration Release /warnaserror 与 SonnetDB.Core.Tests 通过。