NoSQL Databases
NoSQL databases are ideal for keeping large amounts of similar data items, providing extremely fast insertion rates and limited filter-on-load capabilities.
In case of AggreGate, that’s exactly what is required to store a large number of events that inflow at very high rates, sometimes exceeding a million per second.
The system uses Apache Cassandra NoSQL database for managing event storage. With support for both in-process Cassandra instance and the external cluster of Cassandra servers, AggreGate covers all use cases from "deploy an IoT platform in 15 minutes" to "store data from a million of simultaneously connected devices."
Cassandra supports best-in-class clustering that enables both data mirroring and load balancing. Since horizontal scalability provides the almost linear performance boost, large Cassandra clusters may reach extremely high rates with millions of events per second.
NoSQL databases can also serve as a back-end for storing statistics.