The Streaming API provides a high throughput way of capturing real time data via HTTP or websockets, as long as a connection is maintained. Data latency is sub-second, making it useful for time critical situations.
Push Subscriptions deliver interaction data to a Data Destination of your choice, over an adjustable interval. Data buffering means that there is no issue with the occasional failed delivery or dropped connection; if for any reason we are unable to deliver data to your destination, we simply try again for at least an hour before any data would be lost.
It is possible to have both the (slightly) lower latency of the Streaming API, and the guaranteed delivery of Push. There is no additional cost for consuming the same stream hash multiple times, so users can simultaneously consume streams as Push subscriptions and with the Streaming API.