Redis 中的 DB 是什么概念,有什么好处阿 社区 Ruby China

Redis 中的 DB 是什么概念,有什么好处阿 社区 Ruby China,第1张

首先要明白redis是一个数据库

redis是一个内存数据库, 所有数据基本上都存在于内存当中, 会定时以追加或者快照的方式刷新到硬盘中.

由于redis是一个内存数据库, 所以读取写入的速度是非常快的, 所以经常被用来做数据, 页面等的缓存

1、redis 中的每一个数据库,都由一个 redisDb 的结构存储。其中,redisDb.id 存储着 redis 数据库以整数表示的号码。redisDb.dict 存储着该库所有的键值对数据。redisDb.expires 保存着每一个键的过期时间。

2、当redis 服务器初始化时,会预先分配 16 个数据库(该数量可以通过配置文件配置),所有数据库保存到结构 redisServer 的一个成员 redisServer.db 数组中。当我们选择数据库 select number 时,程序直接通过 redisServer.db[number] 来切换数据库。有时候当程序需要知道自己是在哪个数据库时,直接读取 redisDb.id 即可。

RedisKey是一个由redis引擎提供的哈希表存储类型,它可以用于在多个数据源之间快速、高效地保存和访问键值对。

要查找RedisKey对象,您可以使用 r.get() 方法,该方法返回当前正在使用的RedisKey对象。如果没有指定索引或者字段时,将返回null。

另外,您还可以使用 map(映射) *** 作符来遍历给定的列表并生成RedisKey对象,例如:

psql语句 SELECT key FROM table WHERE column = :valSELECTkeyFROMtableWHEREcolumn=:val 会生成RedisKey对象 :key。

lua函数 $m[“key”] 会生成 key=value&type=integer 格式的RedisKey对象。

请注意,RedisKey对象在内存中是不可变的,因此如果您需要在短时间内大量创建RedisKey对象,请使用其他更高效的持久化存储方式。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/bake/7867311.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-10
下一篇2023-04-10

发表评论

登录后才能评论

评论列表(0条)

    保存