Millions of alarms pass through the Calipsa cloud platform everyday, coming from thousands of active cameras across the world. It’s a staggering amount of alarm footage to process, but have you ever wondered what happens behind the scenes to make this possible?
With such vast amounts of data at play - and crime prevention at stake - Calipsa’s cloud infrastructure plays a critical role in being able to manage any amount of alarms, on any given day.
Every single alarm that is triggered from a camera connected to Calipsa will be passed through the False Alarm Filtering Platform - where our cutting edge deep learning video analytics algorithms will determine whether an alarm should be passed for human review or not; in a matter of milliseconds - so it must be prepared for any eventuality. Not every day is the same in the world of security. For example, on the Thanksgiving public holiday in 2019, we saw a 22% decrease in alarm volume compared to the surrounding normal working days. Whereas on New Year’s Eve 2019, there was a 44% increase in alarms compared to the following day. Fluctuations like this are common and Calipsa must be prepared to manage any level of demand.
With this in mind, we invest heavily in the most reliable and scalable infrastructure to ensure we are able to process every single alarm we receive.
The problem with static resources
For applications that have predictable and generally unchanging demands, it is possible to use what is known as static provisioning. This involves assigning a defined number of resources in advance of providing a service. Or in simpler terms, this will mean distributing the Calipsa platform across a fixed number of machines.
In Calipsa’s case, using static resources would pose a number of problems:
Using auto-scaling to manage millions of CCTV alarms
Due to the uneven distribution of alarms by hour and day, Calipsa uses a technique called auto-scaling. This is a far more effective technique than setting a static number of computation resources and allows our False Alarm Filtering Platform to run continuously, to the highest level.
“Auto-scaling is a term used in cloud-computing to describe a way to automatically scale up or down the number of compute resources that are being allocated to your application based on its needs at any given time.” (RightScale)
Auto-scaling effectively avoids issues such as under or over resourcing by dynamically tuning our computation resources. It will analyse the number of requests being received to calculate how much resource is needed and deploy the correct amount at any given time. To do this, we use the Kubernetes platform to manage our workloads. The system allows us to keep track of an application’s resource usage and the number of requests being made.
Because we are dealing with critical security for end customers, we must ensure every part of our infrastructure is optimised for speed and performance to provide minimum latency. Our tech infrastructure is comprised of GPU (graphics processing unit) and CPU (central processing unit) resources. While similar, GPUs are better suited for machine learning applications due to their ability to perform fast multidimensional mathematical operations.
By investing in building our elastic infrastructure, we ensure that the platform is ready to scale seamlessly - whether it’s 1 million or 100 million alarms per day.
At Calipsa, we’re committed to investing in the best possible technology to provide an outstanding level of filtering for our customers. From our infrastructure to our video analytics algorithms, we are constantly evaluating and improving our technology to allow us to make a real and significant difference to crime detection and prevention.
Learn more about Calipsa's cloud-based False Alarm Filtering Platform, a unique video analytics solution that uses deep learning technology to filter out CCTV alarms.