Performance and Scalability
This chapter is about performance and scalability of databases.
In this context, I am using the following definition for scalability:
Scalability is the ability of a system, network, or process,
to handle a growing amount of work in a capable manner
its ability to be enlarged to accommodate that growth.
You see that there are actually two definitions. The first one is about the effects of a growing load on a system and the second is about growing a system to handle more load.
The second definition enjoys much more popularity than the first one. Whenever somebody talks about scalability, it is almost always about using more hardware. Scale-up and scale-out are the respective keywords which were recently complemented by new buzzwords like web-scale.
Broadly speaking, scalability is about the performance impact of environmental changes. Hardware is just one environmental parameter that can change. This chapter covers other parameters like data volume and system load as well.