- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在使用 REDIS 数据存储,并且我创建了 HMSET,如下所示:
HMSET key:1 source 5 target 2
HMSET key:2 source 3 target 1
HMSET key:3 source 3 target 5
HMSET key:4 source 6 target 2
HMSET key:5 source 2 target 3
现在,我想根据提供的源和目标列表查询这些键。假设,source和target的列表是[2, 3, 6]
我想要一个像
这样的查询select from key where source in[2, 3, 6] and traget in[2, 3, 6]
这会给我这样的结果
key:4 source 6 target 2
key:5 source 2 target 3
最佳答案
对于这样的数据集(只有几组),您唯一的选择是迭代它们(在 lua 脚本中或通过提取到应用程序中)并通过检查哈希自行进行过滤。
要加快速度,您可以维护二级索引(同样,工作由您承担)。像这样的东西:
SADD source:3 key:2 key:3
SADD target:2 key:1 key:4
然后您可以通过发出 SINTERSTORE
命令相对快速地找到所有匹配的 key
SINTERSTORE found_keys source:2 source:3 source:6 target:2 target:3 target:6
您将在 found_keys
名称下找到您要查找的 key 。
尽管如此,如果您发现自己这样做,您应该问问自己:为什么我不放弃并使用支持 SQL 的数据库,因为我显然想要一个。
关于database - 使用 HMSET 查询 REDIS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32695790/
我对 HMSET 完全感到困惑。 如果我创建一个具有“N”个(字段值)...对的 HMSET,则 我可以在 O(1) 时间内访问“字段”中的值吗? (文档说“时间复杂度:O(N),其中 N 是请求的字
我正在使用 yiisoft/yii2-redis Yii2 组件与 Redis 交互,它在检索数据时发挥了作用,但在我尝试使用时不断收到以下错误任何类似命令的集合! Redis error: ERR
这个问题不太可能帮助任何 future 的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visit
我正在使用 predis php 客户端。我的代码是这样的: $ObjArray = get_object_vars ( $obj ); $redis->hmset("post:4545",$
假设我们有一个名为my_dict的dict对象: my_dict = {"a": "66", "b": "22", "c": "2321"} 因此我们需要将其作为字符串对象(键,值)存储在Redis中
我在redis中有一些具有这个键结构的值 key:1:abc -> votes -> 0 -> name -> John key:1:xyz -> votes -> 0
我想封装redis hmset。 exports.hmset = (name, autocb, params...)=> await client.hmset name, params, de
引用这个: https://play.golang.org/p/0kYRHO5f7kE 如果我有 20 多个不同的字段,如果 Struct 中的一个字段为空,请不要更新它。只更新其中包含值的那些。 最
假设有一个具有 10 个键值的 Redis 哈希。我将它们全部读入 perl 哈希(或任何语言 map/hash/dict )并需要更新其中的 3 个值。现在我更改了哈希中的3个值,需要将其写回red
我有以下代码: setOnOrder = (map) -> console.log map if _.isEmpty map Promise.resolve() else
使用红色 HMSET 将 JSON 对象存储为一对值的正确方法是什么?我应该像下面这样转义 JSON 对象吗? HMSET myhash field1 "{\"k1\":1}" 最佳答案 如果您使用的
我正在使用 REDIS 数据存储,并且我创建了 HMSET,如下所示: HMSET key:1 source 5 target 2 HMSET key:2 source 3 target 1 HMSE
我有一个 Node.js 应用程序,其中存储了作者在 Redis 数据库中编写的文章。帖子被赋予一个唯一 ID(变量 messageId),并给出两个值:消息和作者。代码的第一部分如下所示: redi
Jedis 有一个 hmset 方法,允许您在特定键处设置字段及其值的映射。 我是这样使用方法的: Map map = new LinkedHashMap(); //
在Vertx 3.7之前,我们使用RedisClient进行如下操作: redis.hmset(someString, someJsonObject, res -> {... }); 新的Re
我是 Redis 的新手,在看过 Redis FAQ 之后我有一个关于 hmset 的问题。 hmset 似乎是我从 mysql 数据库存储用户行的最佳方式。所以如果我有一个像这样从 mysql 返回
谁能告诉我如何使用 redis-benchmark 对具有固定数据大小的 HMSET、HGETALL 进行基准测试 ( -d redis-benchmark 中的选项)。我正在使用 redis 3.2
Redis HMSET 命令文档将其描述为: “将指定字段设置为其存储在键的散列中的相应值。此命令将覆盖散列中的任何现有字段。如果键不存在,则会创建一个包含散列的新键。” 在这种情况下,“哈希”一词是
我已经为我的 node 应用编写了一个负载测试器。我的 Node 应用程序使用 redis 作为后端来在我的应用程序的不同集群(亚马逊实例)之间共享信息。 当我达到大约 100 个请求/秒时,以下代码
我想放一个std::map使用 hiredis 进入 redis 服务器。自 API only allows formatted strings将传递给 redisCommand ,我无法通过单个命令
我是一名优秀的程序员,十分优秀!