Apache Cassandra case study

NoSQL Concepts

Miriam Antona

Software engineer

Apache Cassandra - overview

Apache Cassandra logo

  • Popular column family database
  • Originally developed by Facebook
  • Open-source
  • Finally became a project of the Apache Foundation
NoSQL Concepts

Apache Cassandra - features

  • Distributed
    • Data is distributed across the nodes of the cluster
    • Every node plays the same role
    • No master node
  • High availability
  • No single point of failure
  • Scales horizontally by adding nodes
  • Cassandra client drivers: C#, Java, Python, Scala, etc.
NoSQL Concepts

Apache Cassandra - features

  • Cassandra Query Language (aka CQL)
    • Query data
    • Similar syntax to SQL
    • Tables (for column families), rows, and columns
    • Differences between CQL and SQL:
      • no joins
      • no foreign keys
      • no subqueries, etc.
      • rows can contain a different number of columns
SELECT * FROM users WHERE user_id IN (212, 213, 214);
NoSQL Concepts

Apache Cassandra - ecosystem

  • Third-party Cassandra projects, tools, products, and services
    • Cloud offerings
    • Installation tools
    • Developers' frameworks
    • Connectors
    • etc.
NoSQL Concepts

Apache Cassandra - customers

Logos of some Apache Cassandra customers

NoSQL Concepts

Bigmate case study - overview

  • Location tracking
  • Industrial sensor
  • Productivity

Bigmate logo

NoSQL Concepts

Bigmate case study - problem and solution

  • IoT platform:
    • Ingests and processes large volumes of different data
    • Integrate IoT sensors, devices, and other platforms
    • Process data in real-time
    • Scale and deploy across multiple locations
    • Application examples:
      • Thermy -> capture the skin temperature of people
      • Warny -> detects possible collisions
  • Tested MySQL, MongoDB, Apache Cassandra, etc.
    • Chose Apache Cassandra
    • Scaled better
NoSQL Concepts

Bigmate case study - results

  • Millions of operations of concurrent users
  • Display 20,000 real-time data points to a single customer
  • Fault tolerance (data replication)
NoSQL Concepts

Bigmate case study - results

  • Millions of operations of concurrent users
  • Display 20,000 real-time data points to a single customer
  • Fault tolerance (data replication)
1 https://cassandra.apache.org/case-studies/
NoSQL Concepts

Let's practice!

NoSQL Concepts

Preparing Video For Download...