上QQ阅读APP看书,第一时间看更新
3.1 散列简介
Redis的散列键会将一个键和一个散列在数据库里关联起来,用户可以在散列中为任意多个字段(f ield)设置值。与字符串键一样,散列的字段和值既可以是文本数据,也可以是二进制数据。
通过使用散列键,用户可以把相关联的多项数据存储到同一个散列里面,以便对这些数据进行管理,或者针对它们执行批量操作。比如图3-2就展示了一个使用散列存储文章数据的例子,在这个例子中,散列的键为article::10086,而这个键对应的散列则包含了4个字段,其中:
图3-2 使用散列存储文章数据
●"title"字段存储文章的标题"greeting"。
●"content"字段存储文章的内容"hello world"。
●"author"字段存储文章的作者名字"peter"。
●"create_at"字段存储文章的创建时间"1442744762.631885"。
与之前使用字符串键存储文章数据的做法相比,使用散列存储文章数据只需要在数据库里面创建一个键,并且因为散列的字段名不需要添加任何前缀,所以它们可以直接反映字段值存储的是什么数据。
Redis为散列键提供了一系列操作命令,通过使用这些命令,用户可以:
●为散列的字段设置值,或者只在字段不存在的情况下为它设置值。
●从散列里面获取给定字段的值。
●对存储着数字值的字段执行加法操作或者减法操作。
●检查给定字段是否存在于散列当中。
●从散列中删除指定字段。
●查看散列包含的字段数量。
●一次为散列的多个字段设置值,或者一次从散列中获取多个字段的值。
●获取散列包含的所有字段、所有值或者所有字段和值。
本章接下来将对以上提到的散列操作进行介绍,说明如何使用这些操作去构建各种有用的应用程序,并在最后详细地说明散列键与字符串键之间的区别。