ふと、Redisに登録できるキー数の上限はいくつくらいなのかと気になって調べました。
2³² (約42億)みたい
公式FAQに書いてありました。
What is the maximum number of keys a single Redis instance can hold? and what is the max number of elements in a Hash, List, Set, Sorted Set?
Redis can handle up to 2³² keys, and was tested in practice to handle at least 250 million keys per instance.
Every hash, list, set, and sorted set, can hold 2³² elements.
In other words your limit is likely the available memory in your system.
(翻訳)
1つのRedisインスタンスが保持できるキーの最大数はいくつですか? そして、ハッシュ、リスト、セット、ソートされたセットの要素の最大数はいくつですか?
Redisは最大2³²個 のキーを処理でき、インスタンスごとに少なくとも2億5000万個のキーを処理するように実際にテストされています。 すべてのハッシュ、リスト、セット、およびソートされたセットは、2³²要素を保持できます。 言い換えると、制限はシステムで使用可能なメモリであると考えられます。
2³² = 4,294,967,296個(約42億)でよさそう。でもインスタンスで処理をテストしたのは2億5000万個ってことみたいなので先に処理する限界が来るかもですね。(クラスタ組んでやればこれを超えられるのかな?)
まあ42億あればそうそう行かないって思うじゃないですか…しかし1000万人のユーザーごとのキーを10個作ったらもう1億ですからね…
同時に消費し尽くすことはまず考えられないけど、上限があるとあまり無造作に使うのはよくないと思いました。