otwa-aggie/lib/redis_scanning.rb
2026-08-13 00:44:25 -04:00

11 lines
349 B
Ruby

module RedisScanning
def scan_set_in_batches(redis, key, batch_size:, &block)
redis.sscan_each(key, count: batch_size).each_slice(batch_size, &block)
end
def scan_hash_in_batches(redis, key, batch_size:, &block)
redis.hscan_each(key, count: batch_size).each_slice(batch_size) do |batch|
block.call(batch.to_h)
end
end
end