接下来,我们来看看Redis是如何组织这些数据类型,来构建一个内存数据库的。
以下是Redis数据库的结构:
Redis服务器程序所有的数据库都保存在redisService结构体中,其中有个db数组,为redisDb类型,每个元素为一个数据库。
db数组可配置,默认为16个,redisDb中保存了一个字典,该字典保存了数据库中所有的键值对,我们也称该字典为键空间(key space)。
字典的key为String类型,字典的value就是我们上一节提到的各种数据类型了,这些数据类型让Redis可以存储多样化的数据,利用特定的数据结构实现一些业务场景,我们后面在应用场景小节具体介绍。
客户端连接哪个数据库?
默认情况下,Redis客户端会连接0号数据库,可以通过SELECT命令切换数据库。
1 | 127.0.0.1:6379> SET name arthinking |