jjzjj

redis - Redis GEOADD 中的成员可以有多大(字符串)

GEOADD调用具有以下签名:GEOADDkeylongitudelatitudemember[经度纬度成员...]我在文档中找不到关于成员的最大大小(字符串长度)的信息?谢谢 最佳答案 任何Redis字符串的大小(包括v4)“限制”为0.5GB。 关于redis-RedisGEOADD中的成员可以有多大(字符串),我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/49238498/

java - ERR未知命令 'GEOADD'来自java spring中的嵌入式redis

我正在JavaSpringFramework中进行单元测试,其中代码需要使用GEOADD操作来过滤距离原点25公里以内对齐的位置。实现工作正常(连接到真正的redis节点)但单元测试(连接到嵌入式redis)显示以下错误org.springframework.dao.InvalidDataAccessApiUsageException:ERRunknowncommand'GEOADD';nestedexceptionisredis.clients.jedis.exceptions.JedisDataException:ERRunknowncommand'GEOADD'这是我的pomor

java - ERR未知命令 'GEOADD'来自java spring中的嵌入式redis

我正在JavaSpringFramework中进行单元测试,其中代码需要使用GEOADD操作来过滤距离原点25公里以内对齐的位置。实现工作正常(连接到真正的redis节点)但单元测试(连接到嵌入式redis)显示以下错误org.springframework.dao.InvalidDataAccessApiUsageException:ERRunknowncommand'GEOADD';nestedexceptionisredis.clients.jedis.exceptions.JedisDataException:ERRunknowncommand'GEOADD'这是我的pomor

redis - 有没有办法将 ReJSON 与 GEOADD 一起使用?

我需要存储一个对象的位置和一些关于该对象的附加数据。如果有办法我可以做类似下面的事情GEOADD存储经纬度{key1:val1,key2:val2,...}目的是针对邻近度运行单个查询并获取相关数据,而不是运行多个查询以获取某个邻近度内的所有商店键,然后使用这些键获取这些商店的数据.谢谢。 最佳答案 ReJSON为Redis提供了一种新的数据类型(自然是针对JSON对象),而GeoSets(使用SortedSets实现)是Redis字符串。所以,简短的回答是否。除了技术上的不可能之外,您还应该考虑是否需要ReJSON-它的主要好处是

laravel - 使用 Redis GEOADD 存储 JSON 成员是不好的做法吗?

我的应用程序应该处理大量具有位置的实体(100.000或更多),并且需要仅在给定的半径范围内显示它们。我基本上将所有内容都存储在SQL中,但使用Redis进行缓存和优化(主要是GEORADIUS)。我正在添加如下例所示的实体(不完全是这个,我使用带有内置Redis门面的Laravel框架,但它在后台的作用与此处相同):GEOADDk19.05998247.494338{\"id\":1,\"name\":\"Foo\",\"address\":\"Budapest,Astoria\",\"lat\":47.494338,\"lon\":19.059982}这是不好的做法吗?还是会对性能

php - 如何在 redis 中使用 GEOADD 存储额外数据

我是Redis新手。我需要存储多个位置数据,如下所示:[[name:"shop1",address:"Address1",zip:12345,lng:13.00,lat:37.00],[name:"shop2",address:"Address2",zip:67890,lng:15.00,lat:38.00],//…]我可以使用GEOADD并使用GEORADIUS进行搜索。但是,GEOADD只接受lng、lat和一个参数。我还需要存储所有其他字段。并且需要根据地址/zip进行搜索。有可用的例子吗? 最佳答案 我在自己的应用中采用以下

node.js - 我怎样才能在 redis GEOADD 中对一个键添加 lat long

我像这样在redis服务器中添加旅行的纬度和经度redisClient.geoadd(tripId,[result.start_lat,result.start_long,"startLocation"],function(err,result){console.log(err,result);});我想根据startLocation键获取这些纬度和经度。我怎样才能做到这一点? 最佳答案 您应该调用GEOPOS命令。redisClient.geopos(tripId,"startLocation"],function(err,res

redis - PSUBSCRIBE 和 GEOADD

我有一个非常基本的Redispubsub问题,我想PSUBSCRIBE到通过GEOADD命令添加的项目。这是我所做的:首先运行MONITOR命令。然后在一个新的控制台中我也运行了:PSUBSCRIBE__geo:*然后在我发布的另一个redis-clisession中:GEOADDusers40.0-73.0foo订阅者没有任何反应,但我可以确认该项目是通过MONITOR添加的。 最佳答案 3件事:1)确保您拥有正确的键空间事件CONFIGSET。CONFIGSETnotify-keyspace-eventsAKE将获得所有可用于调

node.js - 有没有办法在redis服务的GEOADD方法中添加Date属性

在遵循geoadd代码方面需要帮助_client.geoadd('drivers_locations',coordinates[0],coordinates[1],driverID,newDate().toString()); 最佳答案 不,GEOADD没有可用的时间维度.根据您正在做的事情,您可以通过将时间分桶到各种键中来模拟这一点,例如constkey=`drivers_locations_${Math.floor(+newDate()/1000/60)`;client.geoadd(key,lon,lat,driverID);

redis - 使用Redis geoadd时如何设置过期

我正在使用Redis上的新地理空间功能。我知道它在幕后使用ZSET。我正在以这种方式添加新条目:GEOADD""report-geo-set""4.78335244""32.07223969""jossef"我如何为特定记录添加过期时间(在我的例子中:“jossef”)在我的设备上?如果API不提供,是否有任何解决方法?谢谢,射线。 最佳答案 遗憾的是没有——Redis会过期整个键,而不是它们各自数据结构中的值。GeoHashes在顶级排序集上实现,不支持单个成员的过期。您可以做的是维护一个额外的SortedSet,并将其中的每个成
12