Scalabilità




.mw-parser-output .nota-disambigua{clear:both;margin-bottom:.5em;border:1px solid #CCC;padding-left:4px}.mw-parser-output .nota-disambigua i{vertical-align:middle}

Nota disambigua.svgDisambiguazione – Se stai cercando scalabilità di un'azienda, vedi Scalabilità (economia).

.mw-parser-output .avviso .mbox-text-div>div,.mw-parser-output .avviso .mbox-text-full-div>div{font-size:90%}.mw-parser-output .avviso .mbox-image div{width:52px}.mw-parser-output .avviso .mbox-text-full-div .hide-when-compact{display:block}





Nell'ingegneria del software, nelle telecomunicazioni, in informatica e in altre discipline, la scalabilità denota in genere la capacità di un sistema di aumentare o diminuire di scala in funzione delle necessità e disponibilità. Un sistema che gode di questa proprietà viene detto scalabile.


L'uso più tradizionale si riferisce alla scalabilità di carico, ovvero la capacità di un sistema di incrementare le proprie prestazioni (il proprio throughput nel caso di sistemi trasmissivi) se a tale sistema vengono fornite nuove risorse (per esempio, nel caso dell'Hardware, maggiore potenza di processore o processori aggiuntivi). Quanto un determinato sistema sia scalabile dipende dalla sua architettura software e/o architettura hardware; per esempio, la presenza di uno o più colli di bottiglia potrebbe rendere ininfluente l'aumento della potenza di calcolo complessiva. Questa dipendenza dall'architettura vale anche, in termini generali, per le altre accezioni in cui si può intendere il termine "scalabile".



Esempi di scalabilità |


La scalabilità, nelle sue varie forme, è un parametro di qualità molto determinante in numerose famiglie di applicazioni software. Sistemi di online transaction processing o DBMS, per esempio, sono scalabili se possono essere messi in condizione di gestire più transazioni aggiungendo processori, memoria o dispositivi. In questo caso, il sistema stesso si presta a essere utilizzato in contesti molto semplici o molto complessi senza che questo richieda una sua riprogettazione.


In alcuni contesti esistono definizioni specifiche, più formali, del concetto di scalabilità; un protocollo di routing, per esempio, si dice scalabile se la dimensione della tabella di routing di ogni nodo cresce secondo il O(log N), dove N è il numero di nodi che compongono la rete.



Classificazioni |


Nel caso dei sistemi software, la scalabilità può essere intesa come capacità di crescita lungo tre dimensioni:



Scalabilità di carico

Un sistema software dovrebbe aumentare le proprie prestazioni in funzione della potenza di calcolo complessiva che viene dedicata alla sua esecuzione. Per i sistemi distribuiti, di solito, l'enfasi viene posta sulla scalabilità rispetto al numero di processori piuttosto che rispetto alla potenza dei singoli processori impiegati;

Scalabilità geografica

Un sistema geograficamente scalabile è quello che mantiene inalterata la sua usabilità e utilità indipendentemente dalla distanza fisica dei suoi utenti o delle sue risorse;

Scalabilità amministrativa

Un sistema amministrativamente scalabile è quello che mantiene inalterata la sua gestibilità indipendentemente da quante organizzazioni lo utilizzano.


La scalabilità di carico può esplicarsi in scalabilità verticale (relativa all'aumento della capacità di elaborazione di una singola macchina) e scalabilità orizzontale (relativa all'aggiunta di altre macchine in distribuzione di carico).



Voci correlate |



  • Legge di Amdahl

  • Complessità asintotica

  • Load balancing


  • Instruction level parallelism (Parallelismo)


.mw-parser-output .CdA{border:1px solid #aaa;width:100%;margin:auto;font-size:90%;padding:2px}.mw-parser-output .CdA th{background-color:#ddddff;font-weight:bold;width:20%}



Controllo di autorità
GND (DE) 4520890-6





InformaticaPortale Informatica

TelecomunicazioniPortale Telecomunicazioni



Popular posts from this blog

Create new schema in PostgreSQL using DBeaver

Deepest pit of an array with Javascript: test on Codility

Fotorealismo