gpt4 book ai didi

php - 具有匹配和范围的redis数据存储

转载 作者:可可西里 更新时间:2023-11-01 11:20:56 26 4
gpt4 key购买 nike

我正在尝试使用 redis 作为我的 mongodb 数据库的缓存层,我的要求是我有城市集合,其中包含亚洲大陆和欧洲大陆的所有城市在这些数据上,我需要使用正则表达式和分页按城市名称执行搜索。我正在将所有城市集合转储到 redis zset 中。问题是当我能够进行分页但无法使用 zscan and match 进行区分大小写的搜索时。请帮我看看我使用 redis 的方法是对还是错。

最佳答案

我不知道对与错,但我是这样处理 Redis 的: MATCH 子句进行 glob-style 匹配,所以当你需要更健壮的表达式时,这是一个问题.在这种情况下,您可以尝试三种基本方法:

  1. 如果可能,尝试将您的搜索规范化为 glob 样式,例如通过始终进行小写搜索(并保持数据相同)
  2. 尝试使用 ZRANGEBYLEX,可能使用 http://redis.io/topics/indexes 处的信息
  3. 使用 Lua 脚本来实现正则表达式逻辑,例如https://stackoverflow.com/a/29945372/3160475

另请注意,关于使用 ZSCAN 进行分页,COUNT 开关只是一个提示。

关于php - 具有匹配和范围的redis数据存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33149425/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com