0
RedisのSortedSetに整数値だけが含まれている場合、1~2millionと言うと、SortedSetの欠損している整数値をすぐに把握するための効率的な方法がありますか?または、SortedSetのほかに別のデータ構造がこのタイプのルックアップに適していますか?Redisのソートセットで不足している番号を知る最も良い方法は何ですか?
RedisのSortedSetに整数値だけが含まれている場合、1~2millionと言うと、SortedSetの欠損している整数値をすぐに把握するための効率的な方法がありますか?または、SortedSetのほかに別のデータ構造がこのタイプのルックアップに適していますか?Redisのソートセットで不足している番号を知る最も良い方法は何ですか?
ビット操作を試すことができます:setbit。整数をRedisに格納する代わりに、ビット位置/オフセットとして整数を取ることができます。つまり、整数の存在を格納するにはbitmap
を使用します。
整数を格納するときは、対応するビットをsetbit
コマンドで設定します。不足している整数をチェックする場合は、値を取得し、ビット値が0
の位置を確認します。
ストア整数
// store 2
setbit key 2 1
// store 123
setbit key 123 1
// store N
setbit key N 1
は行方不明の整数
// get value
get key
// Check each bit of the returned value.
// If the bit value is 0, the position/offset of this bit is a missing integer
を探します