Redis-在生产数据库中安全地检索一小组密钥



我不认为有答案,但我希望有什么答案。在生产中,使用KEYS是一种糟糕的做法,因为它会扫描所有记录(O(n))。如果有大量的密钥,可能会影响性能。

假设数据库中有大量的密钥,有什么安全的方法可以获得其中的一些密钥吗?如果我只是想看一张唱片,而我真的不在乎我得到什么。

我知道这更多的是一个设计问题(例如使用选择、使用集合),除非我知道数据库中没有大量数据,否则我永远不应该真正需要运行密钥。动机更多的是要谨慎,这样我就不会有一天运行密钥并杀死数据库,因为我所在的数据库与我想象的不同

推荐的方法(从v2.8开始)是使用SCAN命令(和同级命令)。SCAN基本上允许您使用光标迭代键空间,这样就不会阻止其他操作。

最新更新