Using Cassandra to manage IoT at scale
In the last few years, we have seen amazing growth, along with the entire Internet of Things (IoT) space. Many wild predictions are being made about billions of devices being connected to the IoT, says Drew Johnson of Aeris, and while that may or may not be true, we understand the high demand for connectivity, data management, and analytics for any type of connected device.
Our technology stack offers an end-to-end IoT solution for businesses across industries. We have customersusing our platform in most every vertical in IoT, including healthcare, fleet management, and utilities. We also provide a full-service connected car platform for the automotive industry.
Foretelling great things in IoT with Cassandra
As we have grown and built out new services, we are leveraging DataStax Cassandra at every level of our stack. We like Cassandra for many reasons including its high availability, the simplicity of scaling, the flexibility for schema expansion, and for such high performance particularly for writes.
In the connectivity area, even our AerCore IoT LTE+GSM cellular core Home Subscriber Server (HSS) is built on top of Cassandra to store cellular subscription and mobility information at nearly infinite scale. That cellular core interacts with other mobile network operators around the world.
As devices move around the globe, they are constantly interacting with the local cellular radio access network and authenticating and updating their mobile location with the Aeris HSS. This use case of writes/updates at a high rate is particularly well-suited for Cassandra.
The Aeris AerPort IoT connectivity management platform manages both Aeris and non-Aeris connectivity subscriptions. This platform leverages Cassandra for storing key reporting and analytics information. The number of devices and transactions on our service has exploded in recent years. We have scaled from hundreds of thousands of transactions per day to hundreds of millions of transactions per day.
The transactions get processed in near real-time to help our customers identify anomalies. The results of those analytics, along with other current and historical information, ends up in Cassandra, which can handle the high update rate.
At the application layer, Aeris is handling many important use cases such as connected airplane data, connected car data, and connected smart meter data. The Aeris AerCloud IoT data management solution has Cassandra in the core. Data coming from IoT devices is always time-series data with N-number of additional attributes. This is a use case tailor-made for Cassandra.
The Time-to-Live features that provide a level of automated data management are especially helpful. We have tested our cluster to two billion messages per day with only 8 nodes in the cluster on AWS. The expansive row structure of Cassandra provides the level of flexibility needed for a wide variety of connected devices.
In total, we now have more than 50 nodes of Cassandra running in production. Our deployment has scaled relatively seamlessly from just a few nodes over the last couple of years. We’ve also seen the power of Cassandra High-Availability (HA) during plenty of AWS hiccups. During the same time, we’ve struggled immensely with our instances of traditional and costly RDBMS – on both scalability and reliability. Needless to say, we’re continuing to move everything to Cassandra that makes sense.
Whether a customer is rolling out an IoT deployment for commercial fleets, consumer vehicles, remote patient monitoring, or a smart grid, Aeris understands the complex mix of network, application, and device interplay. Our single-minded focus on the IoT market has led to scalable service offerings that are unmatched in cost efficiency, quality of service, and reliability.
The author of this blog is Drew Johnson, vice president, Engineering, Aeris Communications.
Comment on this article below or via Twitter: @IoTNow_ OR @jcIoTnow