otwarchive-symphonyarchive/lib/redis_scanning.rb

12 lines
349 B
Ruby
Raw Normal View History

2026-03-11 22:22:11 +00:00
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