Storm Blueprints: Patterns for Distributed Real-time Computation