加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

NoSQL数据库(类别)支持哪些版本控制?

发布时间:2020-12-13 13:31:01 所属栏目:百科 来源:网络整理
导读:我认为无论NoSQL聚合存储是键值,列族还是文档数据库,它都支持值的版本控制.经过一段谷歌搜索,我得出的结论是这个假设是错误的,它只取决于DBMS的实现.这是真的? 我知道Cassandra和BigTable支持它(两个列家族商店).它看起来是Hbase(列族)和Riak(键值),但Redis
我认为无论NoSQL聚合存储是键值,列族还是文档数据库,它都支持值的版本控制.经过一段谷歌搜索,我得出的结论是这个假设是错误的,它只取决于DBMS的实现.这是真的?

我知道Cassandra和BigTable支持它(两个列家族商店).它看起来是Hbase(列族)和Riak(键值),但Redis和Hadoop(键值)却没有. Mongo DB(文档)doCouchbase但MongoDB没有(文档存储).我在这里看不到任何模式.有经验法则吗? (例如,“键值存储通常没有版本控制,而列族和文档数据库执行”)

我正在尝试做什么:我想创建一个从URL到PNG图像的网站截图数据库.我宁愿使用键值存储,因为除了版本控制之外,它是满足问题的最简单的解决方案.但是当网站发生变化或被淘汰时我更新了我的数据库,我不想丢失旧图像.即使我选择了具有版本控制的键值数据库,我也希望能够切换到不同的键值数据库,而不受许多键值DB不支持版本控制的限制.因此,我试图了解聚合NoSQL数据库连续体中的复杂程度,版本控制成为数据模型隐含的功能.

您实际上不需要Key-Value存储的版本控制支持.

您真正需要的数据存储是一个有效的扫描/范围查询功能.

这意味着数据存储区可以按字典顺序检索条目.

大多数KV商店都这样做,所以这很容易.

这是你如何做到的:

>创建版本化密钥.

如果您不能将原始名称哈希到固定长度,请在前面加上原始密钥的长度.然后输入密钥或原始密钥本身的哈希值,并以固定长度编码的版本号结束(因此,通过将数字与最大版本相反,按字典顺序从高版本到低版本排序).
>查询

从最大可能版本到版本0执行范围查询,但只检索一个密钥.

完成

如果您不需要显式版本,也可以使用时间戳,这样您就可以在不获取最新版本的情况下插入.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读