我有一种情况,我正在将大量数据从Google Big Query转储到Redis SET数据结构中,以获得更好的响应时间。我需要SET UNION操作才能完成数百万个键。我已经测试了数千个按键,并且工作正常。问题是,一次可以向SUNION命令提供的键数有限制吗?真的是SUNION Key1 Key2 Key3 ..... KeyN吗?
考虑我有足够的系统容量。

最佳答案



Redis的文档中没有关于在单个sunion命令中可以提供多少个密钥的限制的声明。

顺便说一句,我怀疑在Redis中进行这样的操作是否是一个好主意。请记住,Redis将在此操作之前被阻止,并且在sunion结束之前将不执行其他任何操作。

我最好的建议是您应该使用许多sunionstore命令来执行此操作,然后再从许多集合中获取所有结果,就像整个集合将是sunion数百万个键的结果的页面一样。

sunionstore key:pages:1 key1 keyN

...然后,您将在应用程序层中使用一些迭代器来迭代所有生成的页面。

07-25 22:27