use Redis.pipeline for atomic ops