一.从海量的key里面查询出某一固定前缀的key
问题:假如redis里面有一亿个key,其中有十万个key是以某一个固定的已知的前缀开头的,如何 将他们全部找出来。
留意细节:摸清数据规模,即问清除边界(一定要问清楚数据量);
1. 使用KEYS pattern:查找所有符合给定模式pattern的key。(使用dbsize命令,可以查看redis中的数据量。)
假如该redis正在给线上的业务提供服务。使用KEYS指令会有什么问题?
缺点:(1)KEYS 指令一次性返回所有的匹配的key
(2)键的数量过大会使服务卡顿(当redis中的key过多时候,对内存的消耗和redis服务器都是一个隐患)。
2. SCAN