Самый простой пример - хранение информации. Пусть у нас будет 5 серверов, которые будут хранить файлы. Для того, чтобы распределить нагрузку по этим серверам мы будем каждый файл класть на один из серверов, а сервер выбирать по очень простому алгоритму, будем считать хеш имени видеофайла и делить его на остаток от деления на 5 ( по количеству серверов). Так как предполагается, что хеширование у нас подчиняется нормальному распределению, то файлы на серверах тоже будут распределены равномерно.
Итого, когда нам нужно узнать, на каком сервере лежит файл, нам достаточно посто посчитать хеш, найти остаток от деления и обратиться к нужному серверу.
Тоже самое можно сделать не только с хранением, а и с вычислениями. Передавать задачу на один из серверов по какому то признаку, например по текущей загрузке или по наличию свободной памяти или еще ко какому признаку.
Пример на питоне
import hashlib
h = hashlib.md5('my_cool_filename').hexdigest() # получили 16-разрядную строку
# h = '13061a556715c93e5543f20b7001c669' - это строка
hi = int(h,16) # перевели ее в лонг
# hi = 25287019810011413006158894310673729129L
index = int(h,16) % 5 # нашли остаток от деления
# index = 4L
Еще раз, нужно не делить, а взять
остаток от деления, операция
%