To main content

Big data without system collapse

Scaling involves first adding more machineware such as CPUs, disks and networks to the system, and then analysing how much data traffic it can handle.
What really happened  when 25,000 people missed the Denmark vs. Norway game this autumn because Canal+ had problems with its servers?

”The systems experienced much greater loads than they could handle,” claim Gunnar Brataas and Richard Sanders at SINTEF ICT.

The problems arose because the operators had neither sufficient control of the maximum load nor of how many resources the systems in question required. A system is bound to use even more resources when bottlenecks arise.

”In order to avoid such incidents, which can become really serious if they affect systems crucial to the functioning of society, the software used must be designed to handle a variety traffic volumes”, say Brataas and Sanders.


Scaling

”Scaling involves first adding more machineware such as CPUs, disks and networks to the system, and then analysing how much data traffic it can handle. ”This issue is linked to performance, which is a classic research topic, but little work has been done on scaling”, says Gunnar Brataas. He is a lecturer in the performance and scaleability of data systems at Norwegian University of Science and Technology (NTNU)


”First of all, we want answers to the following questions”, he says.  “What resources do we need to handle the traffic loads in question? Is there something in the system which is scaling badly? Can this be remedied? If not, can we live with the consequences?

There are no simple answers, and current tools and methods are inadequate”, says Brataas. This is a global problem, and that is why ICT researchers at SINTEF are currently coordinating the EU project called CloudScale. (www.cloudscale-project.eu). The project’s aim is to improve the scaleability of cloud-based systems.


Cloud-based systems
The fact is that it has become more common to outsource data management capacity to cloud-based systems. Service providers sell capacity in a cloud system to their clients and make agreements to run the clients’ systems there. In this way, the client gets the agreed capacity in the blink of an eye.

”The Trondheim entrepreneur who came up with the word game Wordfeud on his PC most probably started with his own machine, and then found he had to expand. As his game now approaches 20 million players, he is buying in resources from outside”, says Richard Sanders.

Those who offer cloud services want to make a profit, as do their clients. However, software can be written in such a way that a system cannot scale when the number of clients exceeds the programmed limit.

”Maybe when this happens you can make a healthy profit on the first thousand simultaneous users, break even with the next thousand, and then make a loss on the last thousand”, says Sanders. ”If the application scales badly, attracting too many users can be bad business”, he says.

Tools
The EU project CloudScale is now launched and will continue for three years. The aim of the project is to develop methods and tools to improve the scaleability of cloud-based systems.

The SINTEF researchers will assist software developers who are not experts in scaling to obtain an overview of the scaleability of the systems they are designing.

”As we all know, with good tools the job is half done  –  and this is also true in the computer business”, says Gunnar Brataas.