This document compares Apache Storm and Apache Spark Streaming, two stream processing platforms. It provides an overview of stream processing and how to design, scale, and ensure reliability in stream processing systems. It then describes the core concepts and functionality of Apache Storm, including how a basic topology works. It also introduces the Storm Trident high-level abstraction and compares Storm Core and Storm Trident.