gpt4 book ai didi

java - 不同类型的键值数据库之间的区别

转载 作者:可可西里 更新时间:2023-11-01 11:47:28 26 4
gpt4 key购买 nike

我的问题可能很宽泛,但我确实需要问这个。我打算使用键值 NoSQL 数据库,我是 NoSQL 世界的新手。我正在浏览维基百科页面 https://en.wikipedia.org/wiki/Key-value_database

根据 Wiki,KV 数据库分为以下 4 个类别。

KV – eventually consistent
KV – ordered
KV – RAM
KV – solid-state drive or rotating disk

我无法理解它们之间的确切区别。如果有人能向我解释一下,那就太好了。

最佳答案

这种类型学很有趣,但可能有点误导。我可以评论其中的一些:

RAM - 我曾使用过 Redis,所以我所说的将适用于该数据库。 Redis 旨在将信息保存在 RAM 中,而不是磁盘上。基本上,如果你关闭它,数据就会消失,所以它更像是一个缓存而不是数据库。它可以配置为将数据保存在光盘上,但其设计目的并非如此。

最终一致 - 我曾与 Cassandra 合作过。 EC 意味着读取操作不能保证提供最新的值。他们最终会返回最新的,但不会在更新后立即返回。在 Cassandra 中,您可以指定所需的一致性级别 - 这会影响您能够读/写的速度。更少的一致性 == 更快(这是一个权衡)。与 redis 不同,cassandra 保存到磁盘。

固态驱动器或旋转磁盘 - 我曾使用过 couchbase。 Couchbase 保存到光盘并保证始终一致(在键的读取操作上,而不是在 View /索引上)。所以当你从 CB 读取一个键时,你知道它总是最新的值。我认为这个类别的名称有点误导。其他数据库(如 cassandra)也保存到光盘,所以名称有点不对。

希望这对您有所帮助。

关于java - 不同类型的键值数据库之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46448065/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com