我认为无论Nosql聚合存储是键值,列族还是文档数据库,它都支持值的版本控制.经过一段谷歌搜索,我得出的结论是这个假设是错误的,它只取决于DBMS的实现.这是真的?
我知道Cassandra和BigTable支持它(两个列家族商店).它看起来是Hbase(列族)和Riak(键值),但Redis和Hadoop(键值)却没有. Mongo DB(文档)doCouchbase但MongoDB没有(文档存储).我在这里看不到任何模式.有经验法则吗? (例如,“键值存储通常没有版本控制,而列族和文档数据库执行”)
我正在尝试做什么:我想创建一个从URL到PNG图像的网站截图数据库.我宁愿使用键值存储,因为除了版本控制之外,它是满足问题的最简单的解决方案.但是当网站发生变化或被淘汰时我更新了我的数据库,我不想丢失旧图像.即使我选择了具有版本控制的键值数据库,我也希望能够切换到不同的键值数据库,而不受许多键值DB不支持版本控制的限制.因此,我试图了解聚合Nosql数据库连续体中的复杂程度,版本控制成为数据模型隐含的功能.