RedisSearch:一个基于Redis的搜索引擎模块
from redisearch import Client, TextField, NumericField
# 创建一个Client实例来定义我们的搜索索引
client = Client('my_index')
# 定义文本和数值字段
client.add_document('id', searchable=TextField())
client.add_document('username', searchable=TextField())
client.add_document('join_day', filterable=NumericField())
# 连接到Redis服务器
client.connect()
# 创建索引
client.create_index(drop_on_exists=True)
# 添加文档到索引
client.add_document('user:1', title='Jane Doe', join_day=1)
client.add_document('user:2', title='John Doe', join_day=2)
# 执行搜索查询
res = client.search('John')
# 打印搜索结果
for doc in res.docs:
print(doc.id, doc.title, doc.join_day)
这个简单的代码示例展示了如何使用redisearch-py
库来创建一个基于Redis的搜索索引,并添加文档进行搜索。首先,我们创建一个Client实例来定义索引的结构,然后连接到Redis服务器。接着,我们创建索引,并添加两个文档。最后,我们执行一个搜索查询,并打印出返回的结果。这个例子是基于文本字段的,但是RedisSearch同样支持其他类型的字段,如标记字段(TagField)和地理空间字段(GeoField)。
评论已关闭