unum-cloud/UStore
Multi-Modal Database replacing MongoDB, Neo4J, and Elastic with 1 faster ACID solution, with NetworkX and Pandas interfaces, and bindings for C 99, C++ 17, Python 3, Java, GoLang 🗄️
它解决了什么问题
UStore 是一个专为 AI 和语义搜索设计的模块化、多模态事务数据库。它旨在取代对多种专用数据库(如用于文档的 MongoDB、用于图形的 Neo4J 以及用于向量的 Pinecone)的需求,通过提供一个能够以高性能处理各类数据类型的单一 ACID 事务系统来实现目标。
运作原理
UStore 充当一个“构建您的数据库”工具包,为 CRUD 操作定义了零拷贝(zero-copy)二进制接口。它将存储引擎与高阶语言驱动程序解耦,允许用户在保持相同 API 的同时更换底层引擎(例如 RocksDB、LevelDB、UDisk 或 UCSet)。它支持多种数据模态,包括:
- Blobs:二进制大型对象,提供诸如 UDisk 等高性能选项,支持内核旁路(kernel-bypass)IO。
- Documents:支持 JSON、MessagePack 和 BSON,并使用 RFC 标准进行寻址与更新。
- Graphs:针对大型工作负载进行了优化,使用增量编码(delta-coding)和批处理。
- Vectors:集成向量搜索,支持量化(8-bit int、16-bit float)及多种距离度量。
目标客群
它专为开发 AI 应用程序、语义搜索引擎和高性能数据系统的开发者而设计,这些开发者需要一个能够存储多样化数据类型(文档、图形、向量)的事务数据库,而无需承担管理多个独立数据库系统的开销。
特色亮点
- 多模态:单一系统即可处理 Blobs、文档、图形和向量。
- ACID 事务:保证原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。
- 模块化引擎:支持多种后端,包括 RocksDB 和高性能的 UDisk(内核旁路)。
- 广泛的语言支持:提供 Python、C、C++、GoLang 和 Java 的驱动程序,以及 Apache Arrow Flight RPC 接口。
- AI 集成:内置 Pandas 和 NetworkX API,并与 USearch 和 UForm 集成以进行向量搜索。
相关
- 项目
- 项目
- 项目
- 项目