草庐IT

redis - 如何从 Redis 哈希中选择特定的键

我创建了Redis哈希并存储在条目下方-101-104是哈希键HMSET101field1101field2yyfield3bbfield4300HMSET102field1102field2xxfield3bbfield4300HMSET103field1103field2yyfield3bbfield4300HMSET104field1104field2xxfield3bbfield4300我想检索所有具有field2=xx的记录(这类似于SQL中的where子句)我认为应该在field2上创建二级索引,但不确定如何编写。 最佳答案

mysql - 获取与 Redis 中给定模式匹配的哈希的键数 (hlen) 的最大值

我有很多以如下所示模式开头的记录:user:8d6120be2e7247e49545502092c389fd和用户:000935dc3bb16bd2e0de50988751acfd虽然散列代表用户对象,但一个散列可能比另一个有更多的键。假设用户是经理,那么他可能有很少的其他键,如Reportees、Benifits等,在不实际查看所有记录的情况下,有没有办法知道任何哈希中键的最大数量?我正在将Redis结构转换为关系模式,这让我了解了所有列应该显示的内容。 最佳答案 只需使用HLEN如果你的user:键是HSET。Redis中的大多

node.js - 如何获得所有回答值条件的键

我正在尝试使用Redis,我想根据这些值获得一个结果。例如:redis.hmset("user:"+id,"statut",3);redis.hmset("user:"+id,"statut",2);redis.hmset("user:"+id,"statut",2);我想要所有状态为:2的键Redis和nodeJS可以吗?非常感谢。 最佳答案 Redis并不是真正为这样的查询而设计的。您将必须扫描每个条目并检查值:redis.keys('user:*',function(err,results){results.forEach(f

redis - 在 Redis 中存储没有值的键

我想要一个数据结构来保存一个顽皮词列表。在我允许用户继续之前,我需要确保在这个顽皮的列表中找不到他们的任何词。所以它是一个简单的查找来查看一个键是否存在。每个脏话都没有关联的值。我可以这样使用Redis吗? 最佳答案 是的。您可以将它们存储在一组SADDnaughtyword1word2word3中,然后您可以通过SISMEMBERnaughtyword1查询它,结果为true(实际上1但这是翻译) 关于redis-在Redis中存储没有值的键,我们在StackOverflow上找到一个

bash - Redis-cli && bash 查找具有空值的键

我如何找到redis中的所有空元素我有这样的key:setting:1setting:2setting:442等等如果任何键包含空值,我如何使用redis-clibash脚本命令进行搜索像redis-clikeys\*|这样的东西xargs-L1redis-cliget使用grep并检查值是否为空找到解决方案redis-cliKEYS"settings:*"|xargs-L1redis-cliget 最佳答案 Redis中不存在空键的概念——Redis中没有空键。如果一个键“变成”空的(例如,用最后一个元素弹出的列表),则该键不再存

security - 像 Redis 这样的键/值数据存储是否适合授权数据?

我在别处有我的身份验证。这仅用于授权。但为了授权,我需要将信息映射存储在某处,以便用户X有权查看页面a和该页面上的资源b。这是Redis的用途吗?与RDBMS相比有优势吗?信息变化不大。 最佳答案 如果您确保不受信任的代码或用户无法访问Redis,则可以使用Redis。任何有权访问Redis实例的人都可以读取和更改其内容。相比之下,大多数RDBMS提供非常细粒度的访问控制,因此您可以将授权表设置为对Web应用程序服务器只读,而管理员可以更改它们。 关于security-像Redis这样的

java - 如何获取 ttl 以及 redis/redisson 中的键值

我正在使用redissonjava客户端在Redis中存储键和值。示例如下RMapCachemapCache=redisson.getMapCache("test");//withttl=10secondsIntegerprevValue=mapCache.put("1",10,10,TimeUnit.SECONDS);当我在mapCahce上执行get操作时,有没有办法获取key的剩余ttl? 最佳答案 目前,您可以使用RKeys并查询您感兴趣的key来做到这一点RKeysrkeys=redissonClient.getKeys(

redis - 如何使用jedis客户端在java中监听redis集群的键空间通知?

我正在设置一个服务器,它可以监听和发送有关redis数据库中发生的任何事件的消息。我成功地收到了有关redis主机和端口的新事件的通知,但无法为redis集群这样做。GenericObjectPoolConfigconfig=newGenericObjectPoolConfig();config.setMaxTotal(30);config.setMaxWaitMillis(2000);SetjedisClusterNode=newHashSet();jedisClusterNode.add(newHostAndPort("127.0.0.1",7001));JedisClusterc

redis - Phi 系数用例的键值存储 (Redis)

我想构建一个应用程序,用户可以在其中将多个标签(字符串)分配给一个日期(YYYY-MM-DD字符串)。主要用例是计算Phicoefficient对于两个标签(A和B)的组合,需要将每个日期放入以下类别之一:都没有分配标签分配了标签A,但未分配标签B分配了标签B但未分配标签A已分配标签A和标签B关键信息是属于每个类别的多少日期,而不是什么日期。问题是,如何持久保存该数据,以便可以快速查找它以进行上述分类。使用键值存储(例如Redis),将标签作为键存储集合,将每个标签的日期作为值存储,这将是一个选项,可以轻松地用新信息填充存储。对于查找,A和B的交集(SINTER)将形成第四类,A和B之

redis - 如何在Redis中相交并找到不同的键

我希望获得尽可能高效的Redis键列表。我们可以在Redis服务器上对此进行建模,但是我们喜欢这样,所以这是解决问题的正确方法。让我描述一下情况。假设有一大组“客户”作为字符串存储在Redis中。customer__100000customer__100001customer__100002每个客户都有很多属性。其中包括他们居住的城市。每个城市也存储在Redis中。city__NewYorkcity__SanFranciscocity__WashingtonDC通过不同的过程,我最终会得到一组客户key(预过滤器的交叉集)。一旦我有了这些key,我需要找出我在哪些不同城市中那些客户。我