问题域/PD-329

版本控制数据库

Version-Controlled Database

使用版本控制数据库实现数据的分支、合并、历史追溯和分布式同步

子问题

1.Cell-level 三路合并

2.Embedded vs Server 模式切换

3.Federation 远程同步

4.数据主权分级控制

5.服务器自动启动与空闲停止

6.确定性端口派生避免冲突

7.停机前工作集自动刷盘

8.测试数据库与生产端口隔离防火墙

各项目的解法1 solutions

Signals

横向对比

维度beads
存储引擎Dolt(Git for Data),MySQL 协议兼容,纯 Go 连接
版本控制粒度Cell-level 三路合并,每次写操作自动 DOLT_COMMIT
同步机制Federation:fetch → merge → resolve → push 双向同步
冲突解决ours/theirs/manual 三策略,DOLT_CONFLICTS_RESOLVE 存储过程
数据主权T1-T4 四级 Sovereignty,per-peer 绑定
服务器管理自动启动 + FNV hash 端口派生 + 空闲 30min 自动停止
凭证安全AES-256-GCM 加密存储 + 环境变量临时注入 + 互斥锁保护
历史查询AS OF 时间旅行 + dolt_history_* + dolt_diff() 表函数

最佳实践

1.每次写操作自动 commit

2.Hash-based ID 避免合并冲突

3.Sovereignty 分级保护敏感数据

4.SQL 事务先提交再执行 Dolt commit 避免状态损坏

5.FNV hash 路径派生端口确保确定性

6.环境变量注入凭证 + 互斥锁保护并发安全

7.14 种瞬态错误分类 + 指数退避重试