什么是Redis数据库索引对性能的影响

问题描述:

免责声明:我读过很多声称使用Redis数据库是一个坏主意的帖子,请不要在此讨论。什么是Redis数据库索引对性能的影响

我使用结构化密钥在Redis DB中保留我的客户配置。但是,我必须支持我的应用程序的多个版本,而且这些版本的配置略有不同,因此我决定将不同的版本存储在不同的数据库中。使用不同数据库而不是另一层关键结构的主要原因是能够立即刷新某个数据库,而不是一次删除一个键。当我决定放弃一个版本时,我需要这个。 现在,随着版本的出现,当我添加新版本并删除旧版本时,上部和下部索引自然会攀升。然后,当我达到指数上限时,我有两种选择:我可以“重复使用”已经放弃的索引,或者我可以添加一个新索引。显然,重用索引需要一些我想避免的额外管理。

所以,我的问题是:在数据库范围5-15和数据库范围2005-2025工作之间是否存在性能/内存方面的差异?

收到答复对Redis的reddit的,张贴在这里以供参考:

嘿,

这取决于你想如何迂腐在 性能/内存的影响方面,但在短期获得,基本上一点也不。

这里是在SELECT命令会发生什么:

int selectDb(client *c, int id) { 
    if (id < 0 || id >= server.dbnum) 
     return C_ERR; 
    c->db = &server.db[id]; 
    return C_OK; } 

然后Redis的将C-> DB对于任何给定的命令,以及 选择的数据库是从字面上只是一个数组互动抬头。与往常一样,您应该自己测试一下,但我不明白为什么 会以任何有意义的方式影响性能。

https://www.reddit.com/r/redis/comments/4wplmc/what_is_redis_database_index_impact_on_performance/d69b4z8