FACTOID # 2: Andorra has no unemployment, which is just as well because they have no broadcast TV channels either. What would everyone watch?
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RELATED ARTICLES
People who viewed "Scalability" also viewed:
RECENT ARTICLES
More Recent Articles »
 

FACTS & STATISTICS    Simple view

  1. Select countries to view: (hold down Control key and click to select several)

     

     

    Compare:

     

     

  1. Select fact or statistic: (* = graphable)

     

     

     

  2. (OPTIONAL) Compare to statistic: (both need to be graphable)

     

     

     

  3. View result as:

     

       
(OR) SEARCH ALL encyclopedia, stats & forums:   

Encyclopedia > Scalability
Look up scalability in Wiktionary, the free dictionary.

Contents

Wikipedia does not have an article with this exact name. ... Scale in the computing field is used as a verb. ... Wikipedia does not have an article with this exact name. ... It has been suggested that French Wiktionary be merged into this article or section. ...

Definition

In telecommunications and software engineering, scalability is a desirable property of a system, a network, or a process, which indicates its ability to either handle growing amounts of work in a graceful manner, or to be readily enlarged.[1] For example, it can refer to the capability of a system to increase total throughput under an increased load when resources (typically hardware) are added. An analogous meaning is implied when the word is used in a commercial context, where scalability of a company implies that the underlying business model offers the potential for economic growth within the company. Copy of the original phone of Alexander Graham Bell at the Musée des Arts et Métiers in Paris Telecommunication is the transmission of signals over a distance for the purpose of communication. ... Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software. ... This article or section does not adequately cite its references or sources. ... The term business model describes a broad range of informal and formal models that are used by enterprises to represent various aspects of business, such as operational processes, organizational structures, and financial forecasts. ... World GDP/capita changed very little for most of human history before the industrial revolution. ...


Scalability, as a property of systems, is generally difficult to define [2] and in any particular case it is necessary to define the specific requirements for scalability on those dimensions which are deemed important. It is a highly significant issue in electronics systems, database, routers, and networking. A system whose performance improves after adding hardware, proportionally to the capacity added, is said to be a scalable system.


Dimensions

Scalability can be measured in various dimensions, such as:


Load scalability

A distributed system should make it easy for us to expand and contract its resource pool to accommodate heavier or lighter loads. or the ease with which a system or component can be modified to fit the problem area. This article or section should be merged with Distributed computing In computer science, a distributed system is an application that consists of components running on different computers concurrently. ...


Geographic scalability

A geographically scalable system is one that maintains its usefulness and usability, regardless of how far apart its users or resources.


Administrative scalability

No matter how many different organizations need to share a single distributed system, it should still be easy to use and manage.


Examples

For example, a scalable online transaction processing system or database management system is one that can be upgraded to process more transactions by adding new processors, devices and storage, and which can be upgraded easily and transparently without shutting it down. Online Transaction Processing (or OLTP) is a class of program that facilitates and manages transaction-oriented applications, typically for data entry and retrieval transaction processing. ... A database management system (DBMS) is computer software designed for the purpose of managing databases. ...


A routing protocol is considered scalable with respect to network size, if the size of the necessary routing table on each node grows as O(log N), where N is the number of nodes in the network. The introduction to this article provides insufficient context for those unfamiliar with the subject matter. ... This article describes routing in computer networks, a method of finding paths from origins to destinations, along which information can be passed. ... Big O notation or Big Oh notation, and also Landau notation or asymptotic notation, is a mathematical notation used to describe the asymptotic behavior of functions. ...


Scale vertically vs. horizontally

Scale vertically

To scale vertically (or scale up) means to add resources to a single node in a system, typically involving the addition of CPUs or memory to a single computer.


Scale horizontally

To scale horizontally (or scale out) means to add more nodes to a system, such as adding a new computer to a distributed software application.


Design for scalability

It is often advised to focus system design on hardware scalability rather than on capacity. It is typically cheaper to add a new node to a system in order to achieve improved performance than to partake in performance tuning to improve the capacity that each node can handle. But this approach can have diminishing returns (as discussed in performance engineering). For example: suppose a portion of a program can be sped up by parallelizing it. Suppose we can improve 70% of a module by parallelizing it, and run on four CPUs instead of one. If α is the fraction of a calculation that is sequential, and 1 − α is the fraction that can be parallelized, then the maximum speedup that can be achieved by using P processors is given according to Amdahl's Law: frac{1}{alpha+frac{1-alpha}{P}}. Substituting the values for this example, we get frac{1}{0.3+frac{1-0.3}{4}} = 2.105. If we double the compute power to 8 processors we get frac{1}{0.3+frac{1-0.3}{8}} = 2.581. Doubling the processing power has only improved the speedup by roughly one-fifth. If the whole problem was parallelizable, we would, of course, expect the speed up to double also. Therefore, throwing in more hardware is not necessarily the optimal approach. Performance tuning is the improvement of system performance. ... Performance engineering is the set of roles, skills, activities, practices, tools, and deliverables applied at every phase of the Systems Development Lifecycle which ensures that a solution will be designed and implemented to meet the non-functional requirements defined for the solution. ... In parallel computing, speedup refers to how much a parallel algorithm is faster than a corresponding sequential algorithm. ... The speedup of a program using multiple processors in parallel computing is limited by the sequential fraction of the program. ...


Notes

  1. ^ André B. Bondi, 'Characteristics of scalability and their impact on performance', Proceedings of the 2nd international workshop on Software and performance, Ottawa, Ontario, Canada, 2000, ISBN 1-58113-195-X, pages 195 - 203
  2. ^ See for instance, Mark D. Hill, 'What is scalability?' in ACM SIGARCH Computer Architecture News, December 1990, Volume 18 Issue 4, pages 18-21, (ISSN 0163-5964) and Leticia Duboc, David S. Rosenblum, Tony Wicks, 'Doctoral symposium: presentations: A framework for modelling and analysis of software systems scalability' in Proceeding of the 28th international conference on Software engineering ICSE '06, May 2006. ISBN 1-59593-375-1, pages 949 - 952

See also


  Results from FactBites:
 
Scalability - Wikipedia, the free encyclopedia (590 words)
In telecommunications and software engineering, scalability is a desirable property of a system, a network or a process, which indicates its ability to either handle growing amounts of work in a graceful manner, or to be readily enlarged.
For example, a scalable online transaction processing system or database management system is one that can be upgraded to process more transactions by adding new processors, devices and storage, and which can be upgraded easily and transparently without shutting it down.
A routing protocol is considered scalable with respect to network size, if the size of the necessary routing table on each node grows as O(log N), where N is the number of nodes in the network.
Achieving Massive Scalability with SQL Server (1873 words)
In addition to not adding any benefit in performance or scalability, MSCS can take an embarrassing 1 to 5 minutes to transfer its resources to the backup server and complete the failover process, during which time the database is down.
A clever way to achieve scalability when certain parts of a client or server application only require read access to the database, is to point those applications to a copy of the database on a separate database server.
Scalability comes from each Access server in the cluster only processing a much smaller load of operations, which it is capable of, and backup and recovery exists on account of having multiple separate live copies of the data –- better than failover.
  More results at FactBites »


 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments
Please enter the 5-letter protection code

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.