构建分布式 bittorrent-SQL 数据库

Building a distributed bittorrent-SQL database

我有一个 分布式 SQL 数据库 的想法,使用 bittorrent 协议来提取和写入其数据。

为了论证,假设这是一个消息传递应用程序,其中有成千上万的用户 运行 一个包含消息传递 window 的程序,以及一个供他们编写消息的输入框。

写入的每条消息都会插入到它们自己的 sqlite 数据库中。

如何实现

然后您将拥有大量增量文件,所有 P2P 托管以实现冗余,在许多机器上更新本地 .sqlite 数据库。

我遇到了一些问题

提前感谢您的帮助。

Bittorrent 是为分发不可变的和有点大的数据集而设计的,并且实际上不知道任何跨越多个种子的操作。 数据库主要是改变相对较小的数据块并对这些数据的不同子集执行操作。

尝试将数据库语义硬塞进 bittorent 中时,您不会有什么乐趣。

充其量你可以用它来分发数据库的快照。
如果新内容只有 adds/removes 文件(同样,相当大)而不修改旧文件,那么通过一点点修补,bittorrent 可以很好地回收以前种子的数据。

除此之外的任何内容都需要对协议进行一些重大修改,它不再是真正的普通 bittorrent。