Il clustering è un tipo di tecnologia informatica che prevede l'uso di più computer collegati in rete per supportare l'elaborazione condivisa. Viene utilizzato nei sistemi di calcolo distribuito ed è particolarmente utile per attività quali l'elaborazione di dati su larga scala, il calcolo ad alte prestazioni e il web hosting. In un sistema cluster, ogni computer della rete viene definito nodo.
Quando un compito viene assegnato al cluster, viene distribuito tra i nodi, che lavorano insieme per elaborare il compito in parallelo. In questo modo, il compito può essere completato in un tempo molto più breve rispetto a un sistema a singolo nodo. Inoltre, i cluster sono in grado di sfruttare la scalabilità, grazie alla quale è possibile aggiungere altri nodi al sistema per aumentare la capacità e le prestazioni quando necessario.
Il clustering è utilizzato in molte applicazioni diverse, come il web hosting, l'informatica scientifica, l'elaborazione dei dati e il calcolo ad alte prestazioni. Viene spesso utilizzato anche nelle reti di sicurezza informatica per il rilevamento delle frodi e delle intrusioni. Inoltre, il clustering può essere utilizzato nei sistemi di cloud computing per consentire la condivisione delle risorse tra le applicazioni.
Nel complesso, i cluster rappresentano un modo efficiente ed economico per elaborare attività su larga scala. Integrano la potenza di un singolo nodo di calcolo e consentono alle organizzazioni di scalare la propria infrastruttura informatica in modo rapido e semplice.