嗨,我需要你对REDIS评论的设计模式的意见:
1个帖子的文本评论是否更好存储为:
- a single LIST where I will RPUSH all comments (may be up to 100chr each string)
- a single LIST of commentID (with RPUSH) and a new comment object each time...?
谢谢!
因此,Redis将zrange (和相关的排序集命令)指定为一组有序的结果(可能是没有重复的列表?)。
为什么Jedis上的zrange (和相关的API)(官方的和推荐的REDIS客户端)返回一个集合?从定义上说,它没有排序的概念?
这直接违反了redis操作的语义。
这是zrange jedis 2.0.0实现:
public Set<byte[]> zrange(final byte[] key, final int start, final int end) {
checkIsInMulti();
client.zrange(key,
我只是遇到了一个问题。我使用redis来存储地理信息。例如:
hset 10001 la 41.000333
hset 10001 lo 121.999999
或
zadd la 41.xxxxx pk-value
zadd lo 121.xxxxx pk-value
大约40000个密钥值该密钥是用于终端id的,并且设置了存储终端gps信息的值。我有一个计算周围终端的要求。例如,我的位置是41.000123,121.999988,我想以最快的速度计算我所在位置周围的终端,我知道如何计算两个位置的距离。我想要的是想一种快速迭代所有数据的方法。在Redis 2.6中有lua支持。它能帮助解决我的
我使用Stack Exchange .Net Redis提供程序来存储和检索值。我想知道如何在Redis中搜索某些记录(就像任何数据库一样,搜索需要在Redis实例中执行,而不是在.Net应用程序中)。
示例:
public class Employee
{
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
public int Salary {get;set;}
}
如果我在Redis缓存服务器中以.Ne
我有一个用Redis存储数据的程序。有任意数量的集合存储在名称空间"foo“下的键中,即keys foo:*将返回一组键的列表。我想从命名空间中包含它的所有集合中删除字符串"bar“。本质上(这是Ruby中的):
redis.keys("foo:*").each do |key|
redis.srem(key, "bar")
end
由于使用了keys,这不是用于生产用途,这是低效的,而不是原子化的。是否有更好的方法从所有的集合中删除"bar“,因为我没有我想要预先操作的集合的键?
我不介意使用Lua脚本,如果这是原子性的唯一方法,并
我有一个redis数据库,它的客户端是用Ruby编写的。这个数据库的大小是多少?
def follow!(user)
$redis.multi do
$redis.sadd(self.redis_key(:following), user.id)
$redis.sadd(user.redis_key(:followers), self.id)
end
end
def redis_key(str)
"user:#{self.id}:#{str}"
end
# Usage:
userA.follow!(userB)
我认为它是2N,但是有人告诉我它是