Scalability
Scalability is the ability of a system, network, or process to handle a growing amount of work in a capable manner or its ability to be enlarged to accommodate that growth.
For example, it can refer to the capability of a system to increase its total output under an increased load when resources (typically hardware) are added.
Scalability, as a property of systems, is generally difficult to define and in any particular case it is necessary to define the specific requirements for scalability on those dimensions that are deemed important.
Scalability is a highly significant issue in electronics systems, databases, routers, and networking.
A system whose performance improves after adding hardware, proportionally to the capacity added, is said to be a scalable system -- it scales well.
An algorithm, design, networking protocol, computer program, or other system is said to scale if it is suitably efficient and practical when applied to large situations (e.g. a large input data set, a large number of outputs or users, or a large number of participating nodes in the case of a distributed system).
If the design or system fails when a quantity increases, it does not scale.
In practice, if there are a large number of things (n) that affect scaling, then resource requirements (for example, algorithmic time-complexity) must grow less than n2 as n increases.
An example is a search engine, that must scale not only for the number of users, but for the number of objects it indexes.
Scalability refers to the ability of a site to increase in size as demand warrants.
Scaling and Economics
An analogous meaning is implied when the word is used in an economic context, where scalability of a company implies that the underlying business model offers the potential for economic growth within the company.
Scaling and Biology
- TO DO: research and document
External Links
- Scalability @ Wikipedia