1. Introduction

2. Background and Architecture

3. Stream Processing Engines and Tools

4. Managed Cloud Systems

5. Elasticity in Stream Processing Systems

6. Distributed and Hybrid Architecture

7. Future Directions

8. Summary and Conclusions