待补充
sourcenetwork/defradb
3/5
🧩 软硬件结合
已发布
项目简介
DefraDB is a Peer-to-Peer Edge-First Database. It's the core data storage system for the Source Ecosystem.
DefraDB 是一个以用户为中心的下一代去中心化数据库,由 Source Network 团队开发,旨在重新定义数据所有权、隐私保护和信息安全的标准。它的核心创新在于融合了 MerkleCRDT(默克尔冲突自由数据类型)和 IPLD(星际链接数据)的内容可寻址特性,从而实现了多主写入架构,让多个节点可以同时写入数据而无需担心冲突。
标签
项目特点
**多主写入架构**:基于 MerkleCRDT 技术,支持多个节点同时写入数据,无需协调即可自动解决冲突。
**内容可寻址存储**:利用 IPLD 将数据映射为内容可寻址的 DAG(有向无环图),确保数据完整性和可验证性。
**用户数据主权**:以用户为中心设计,让用户完全掌控自己的数据,支持端到端加密和细粒度访问控制。
**去中心化同步**:内置 P2P 同步机制,节点间可实时同步数据变更,无需中心服务器。
**GraphQL 原生支持**:提供 GraphQL 查询接口,开发者可以像操作传统数据库一样灵活查询去中心化数据。
**跨平台兼容**:支持多种操作系统和编程语言,易于集成到现有技术栈中。
技术规格
| 数据库类型 | 去中心化文档数据库 |
|---|---|
| 核心算法 | MerkleCRDT(默克尔冲突自由数据类型) |
| 数据模型 | IPLD(星际链接数据) |
| 查询语言 | GraphQL |
| 同步协议 | P2P 网络(libp2p) |
| 加密支持 | 端到端加密(E2EE) |
| 存储后端 | 可插拔(默认 LevelDB) |
| 编程语言 | Go |
| 支持平台 | Linux、macOS、Windows |
| 许可证 | Apache 2.0(待确认) |
项目资源
搜索资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| Go 编译器 | 1 | — | 版本 1.18+ |
| LevelDB | 1 | — | 默认存储引擎 |
| libp2p | 1 | — | P2P 网络库 |
| Git | 1 | — | 版本控制 |
| Make | 1 | — | 构建工具 |
| Docker | 1 | — | 容器化部署 |
| Node.js | 1 | — | 用于测试客户端 |
能力画像
**记忆与知识检索**:3/5 — 作为去中心化数据库,支持 GraphQL 查询,但数据检索依赖于 P2P 网络同步,延迟较高。
**动手与操作**:4/5 — 提供命令行工具和 Docker 部署,上手简单,但去中心化配置需要一定网络知识。
**编程与算法**:5/5 — 核心实现涉及 MerkleCRDT、IPLD 和 P2P 网络算法,对编程能力要求较高。
**设计与建模**:4/5 — 数据模型基于 IPLD,支持灵活的模式定义,但去中心化场景下的数据建模与传统数据库不同。
**实验与调试**:3/5 — 提供本地测试模式,但去中心化环境下的调试工具相对有限。
**协作与分享**:5/5 — 开源社区活跃,GitHub 上有完善的 Issue 和 Discussion 机制,鼓励贡献。
**学习与研究**:4/5 — 文档齐全,但去中心化数据库概念较新,需要一定学习曲线。
**系统集成**:4/5 — 支持 GraphQL 接口,易于与前端和后端系统集成,但 P2P 网络可能受防火墙限制。
项目图库
所需技能
Go 编程语言基础
分布式系统概念(CRDT、P2P 网络)
GraphQL 查询语言
数据库原理(文档数据库、索引)
版本控制(Git)
命令行操作
网络安全基础(加密、身份验证)
适用场景
去中心化应用(dApp)的数据存储层
用户数据主权优先的社交网络或内容平台
离线优先的协作工具(如文档编辑、任务管理)
物联网设备间的数据同步与共享
隐私敏感型应用(医疗、金融数据管理)
边缘计算场景中的本地数据库与云端同步
开源社区驱动的知识库或档案系统