当前位置:首页 > 内存 > 正文

redis是类型的内存数据库

  • 内存
  • 2024-06-12 20:40:23
  • 6391

一、redis数据结构

Redis数据结构

Redis是一个存储键值的内存数据库。它的键都是字符串类型。Values支持存储5种类型的数据:String(字符串类型)、List(列表)。type)、Hash(哈希表类型,即键值类型)、Set(无序集合类型,元素不可重复)、Zset(有序集合类型,元素不可重复)。

对于这五种数据类型,Redis通过底层的redisObject对象来表示。redisObject有3个重要的属性:type、encoding、ptr。

其中,type代表有价值的数据类型,也就是我们上面提到的五种数据类型(REDIS_STRING、REDIS_LIST、REDIS_HASH、REDIS_SET、REDIS_ZSETencoding代表编码);value,表示底层使用什么数据结构;ptr是指向存储值的底层数据结构的指针。

type和ptr属性不需要太多解释,你马上就知道它们的含义。本文主要分析如何对value进行编码,也就是对应的底层。不同数据类型的取值是什么,分析数据结构原理。

Redis(RemoteDictionaryServer),远程字典服务,是一个采用ANSIC编写的开源日志、Key-Value数据库,支持网络,可以基于内存、持久化,并提供多种API语言。

Redis是一个键值存储系统。与Memcached类似,它支持的存储值类型相对较多,包括string(字符串)、list(链表)、set(集合)、zset(setedset——有序集合)、hash(哈希类型)。所有这些数据类型都支持推送/弹出、添加/删除、相交、合并、差异和更丰富的操作,并且这些操作都是原子的。

在此基础上,redis支持多种不同的排序方式。和memcached一样,对数据进行缓存以保证效率。不同的是,redis会定期将更新的数据写入磁盘或者将修改操作写入额外的日志文件,并在此基础上实现主从同步。


二、redis与mc的区别,redis支持的数据结构有哪些是一个非关系型内存数据库,而memcached只是一个内存键值缓存有丰富的数据类型,包括五种类型:字符串(string)、列表(list)、散列(dictionary)和集合(set))、zset(排序集);mc仅支持字符串
3.先进的数据类型使Redis的使用更加简洁,易于理解和维护,并可实现丰富的应用,例如实时排名和购买推荐等