us is under 1-5s ‣ Q: How many customers are currently online? ‣ Q: How many chats/calls are taking place at the moment? ‣ Q: What is the utilisation of my customer support agents? Use Case 1: Real-time analytics 20
- no master ‣ Great performance ‣ CQL - SQL like querying ‣ Great support and bug-free drivers from Datastax ‣ Key: Design your schema around queries; see https://cassandra.apache.org Cassandra 29
a single broker ‣ Scalable: partitioned data streams ‣ Durable: messages persisted and replicated ‣ Distributed: Strong durability with and fault-tolerance ‣ Downside: requires ZooKeeper ‣ Very simple - great at scale, requires more client-side logic see https://kafka.apache.org Kafka 30
Supported on all major platforms ‣ Fairly easy to scale through clustering ‣ Good support ‣ More functionality comes at a cost of lower performance than Kafka Rabbit MQ 31
‣ Part of the Big Data Analytics Stack (BDAS) open sourced in 2010 ‣ Top-level Apache project as of 2014 Apache Spark 35 source: http://spark.apache.org
Rich API in Scala/Python/Java ‣ Fast for iterative algorithms (important for ML) ‣ Growing community ‣ The concept of a micro-batch ‣ Nicely integrates with Kafka and Cassandra ‣ Fairly easy setup Why Spark 41
Users for multiple businesses online ‣ Scale 100s to 100 000s activities per second ‣ Response time under 5s ‣ A perfect use case for spark streaming Counting users currently online 43