我想建立一种归档服务。我的想法是我向服务发送一个文档(大约 10 KB 的 HTML),它给我发回一个简短的标识符,然后我可以使用该标识符来检索文档。许多文件彼此非常相似;对于任何一个文档,可能有 1000 个其他文档与它重叠 95%。因此,每次我发送文档时,归档服务都应该尝试找到一个相似的文档,并仅存储差异。
是否已经存在这样的系统?如果可能的话,我更喜欢基于 PHP/MySQL 的东西。
CouchDB 从您的用例中浮现。了解他们如何将文档存储为 JSON 以及如何对文档进行修订(存储在 _rev 字段中)。
http://guide.couchdb.org/draft/documents.html
但是,它不会为您进行比较。通过一个简单的 CouchDB 实现,这个责任将落在您身上,但它确实可以很好地为您处理版本。
不幸的是,我不知道任何开箱即用的数据库可以比较文档,然后找到相似的东西并替换它们。