Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
redis中的键值设计_Redis_Memcached - Fatal编程技术网

redis中的键值设计

redis中的键值设计,redis,memcached,Redis,Memcached,我刚开始和redis合作。我在使用它时遇到了问题。我有一个用户列表 我有一个显示用户列表的页面,在该页面中我有分页、排序、按名称和地址筛选。。。如何设计键值redis以便于使用?redis并不完全适合类似SQL的用法。我的意思是,通常你获取数据的方式是把数据放在Redis中 如果不需要太多的筛选,或者只需要有限的筛选,那么使用排序集数据类型(其中用户ID作为值,unix时间作为分数),拥有分页用户列表是一个很好的用例。如果需要另一个按不同字段排序的列表,则可能需要额外的排序集,以此类推 就过滤而

我刚开始和redis合作。我在使用它时遇到了问题。我有一个用户列表


我有一个显示用户列表的页面,在该页面中我有分页、排序、按名称和地址筛选。。。如何设计键值redis以便于使用?

redis并不完全适合类似SQL的用法。我的意思是,通常你获取数据的方式是把数据放在Redis中

如果不需要太多的筛选,或者只需要有限的筛选,那么使用排序集数据类型(其中用户ID作为值,unix时间作为分数),拥有分页用户列表是一个很好的用例。如果需要另一个按不同字段排序的列表,则可能需要额外的排序集,以此类推

就过滤而言,您可以在服务器端从排序集获取范围,并删除稀疏的不匹配项。但是,您可以看到,如果您的过滤器从数百万个元素中选择了10个元素,这将无法缩放


因此,Redis在您的用例中的适用性取决于确切的细节,一般来说,您可能想要一个更适合复杂查询的数据库,即使您可能要付出性能代价。

问题太广泛了。请更具体地说明你想要实现的目标。