点 快速的未来将在您所在城市举行的某项活动中登场。

加入我们的 Redis 发布活动

索引模式

返回术语表

索引模式定义

索引模式是指为了优化搜索查询的性能而组织和构建搜索索引中的数据所采用的策略。索引模式的目标是减少搜索大型数据集所需的时间和资源。

Redis 索引模式最佳实践

Redis 是一款内存中键值存储,通常用作缓存或数据库。与传统的关系型数据库不同,Redis 并不以相同的方式支持 SQL 查询和索引模式。作为一种来源可用的 Redis 模块,Redis Search 大多被用作全文搜索工具。但是,随着最近的 2.0 版本发布,Redis Search 变得更加强大且用途广泛,为 Redis 提供了缺失的查询和索引引擎。

Redis 数据模型

Redis 数据库包含许多键,而键名创建了一个名称空间。Redis 数据库中的每个键类似于关系数据库中的主键。例如,要在 Redis 中建模用户,一种方法是让每个用户拥有一个散列。每个散列都使用如“users:profile:user_id”这样的键访问。在散列内部,存储用户的姓名、用户名、注册日期以及其他数据。

Redis 中的二级索引

如果你想按除主键之外的其他属性(如姓氏或注册日期或居住国)进行查询,你需要一个二级索引。二级索引将每个属性映射到具该属性的一组主键。在 Redis 中,你需要在你数据上创建一个 Redis 搜索索引,才能查询它。

传统数据库与 Redis

在 PostgreSQL 等传统关系数据库中,你将你的数据存储在表中,并使用 SQL 进行查询。为使查询高效,你需要添加索引。在 Redis 中,你将你的数据存储在散列中,并在查询之前在数据上创建一个 Redis 搜索索引。

创建 Redis 搜索索引

创建 Redis 搜索索引涉及到指定你想要索引的字段、它们的类型以及索引的名称。例如,要索引用户的姓名、姓氏、个人简介、注册日期和国家代码,你需要运行以下命令

vbnetCopy codeFT.CREATE users_idx ON HASH PREFIX 1 users:profile: SCHEMA 
   first_name TEXT 
   last_name TEXT 
   bio TEXT 
   registered_on NUMERIC 
   country_code TAG 

查询 Redis 搜索

一旦创建了一个索引,你可以使用 Redis Search 的查询功能查询它。Redis Search 支持复杂查询功能,如全文搜索、数值范围查询以及地理空间查询。