Scalability

Even if the word scalability is often used, it has no established scientific definition. By scalability we mean the relationship between system size and system capacity. System size is the amount of hardware resources used, and has three dimensions: processing speed, storage size and connectivity. Capacity is the throughput for a fixed workload.  If the relationship between system size and system capacity is linear, scalability is a simple concept, but we will often have non-linearities. Even more than performance, scalability is deeply rooted in the system architecture. Scalability design flaws are therefore often expensive to fix. A scalable system will also use less energy, so scalability is connected to energy efficiency. Coarse system models are essential because otherwise the manual work involved in making the scalability model will simply be too large.

SINTEF has developed a scalability framework which has been used in FP6 projects ranging from mobile ad hoc network middleware (MIDAS), adaptive middleware (MUSIC) and security threat database (SHIELDS). This framework has also been utilized in the ProSUS project on underwater sensor networks.

Currently we are working with scalability management for data center provisioning for the largest Norwegian Telco, Telenor. The challenge is more optimal resource provisioning to avoid both 1) under-provisioning, resulting in high response times or low throughput as well as 2) over-provisioning, caused by low utilization of resources, and resulting in too large energy bills. This work will also be extended into the cloud. Cloud providers theoretically offer their customers unlimited resources for their applications on an on-demand basis. However, scalability is not only determined by the available resources, but also by how the control and data flow of the application or service is designed and implemented.


Published March 26, 2012