Redis数据库的基本类型介绍(数据库redis基本类型)
Redis 是一种开源的、基于内存,NOSQL的键值对存储数据库,它提供了几乎所有的内置数据类型,这些数据类型都有明确的内存机制,可以极大地提升数据存取效率。针对Redis,它支持5种不同的基本数据类型,分别是:Strings(字符串)、Hashes(哈希)、Lists(列表)、Sets(集合)和Sorted Sets(有序集合)。本文将对这5种数据类型进行一一介绍。
第一类基本数据类型是Strings(字符串),它允许你存储字符串值到Redis中。Redis中字符串可以是一个普通字符串,也可以是一个布尔值,整数值,浮点值等多种类型。它提供了一系列的API来读写字符串值,以及常见的操作,例如SET、APPEND、GET、GETSET等操作,通过以下代码可以实现字符串的存取:
redis.set('k1','v1');
//存储redis.get('k1');
//读取,k1对应的value为v1
第二类基本数据类型是Hashes(哈希),它是Redis中一种特殊的数据结构,用来表示键值对集合,每个键配对一个或多个值,并保存在一个单独的key下,存量的结构为field-value形式,field是唯一的,可以使用多个field-value来存储它们。它提供了一系列API通过设置、获取哈希对象中的某个字段来进行存取操作,以下代码示例展示如何存取哈希:
//设置一个哈希 :
redis.hset('person', 'name', 'jerry');//设置另一个哈希值
redis.hset('person', 'age', 26);
//读取单个哈希:redis.hget('person', 'name');
//jerry
//读取全部哈希:redis.hgetall('person');
//结果:[name: jerry, age: 26]
第三类基本数据类型是Lists(列表),它是Redis中的另一种数据结构,也是一种存储字符串值的容器,但它支持在尾部添加字符串值,也支持在头部删除字符串值,可以将一个列表看成一个先进先出(FIFO)映射。Redis为列表提供了一系列API用来操作,下面示例将介绍如何存取列表:
//在表头插入一个值
redis.lpush('list_key', 'hello');
//在表尾插入一个值redis.rpush('list_key', 'world');
//读取列表长度redis.llen('list_key');
//输出:2
//读取整个列表redis.lrange('list_key', 0, -1);
//输出: ['hello', 'world']
第四类基本数据类型是Sets(集合),它是一种存储字符串值的无序集合,也可以理解为无序的列表,集合中的字符串值不能重复,这意味着集合里不能有任意两个相同的值,它提供了一系列API,可以用来把字符串添加到集合,或者移除字符串,下面示例展示如何来存取集合:
//向集合添加成员
redis.sadd('set_key', 'elem1', 'elem2');
//移除集合中的某一成员redis.srem('set_key', 'elem1');
//读取集合成员个数let num = redis.scard('set_key');
//输出:1
//获取集合中所有成员let members = redis.smembers('set_key');
//输出:['elem2']
最后介绍的是第五类基本数据类型——Sorted Sets