Почему хэшируется только суффикс work_index? - PullRequest
2 голосов
/ 07 июня 2010

Я читаю PDF, который Бретт Слаткин опубликовал для Google I / O 2010:
" Конвейеры данных с Google App Engine ".

В этом видео (часть с фанатами) Бретт говорит, что work_index должен быть хешем, чтобы «вы распределяли нагрузку по BigTable» ... и вот как работает work_index создано:

work_index = '%s-%d' % (sum_name, knuth_hash(index))

... который, я думаю, создает что-то вроде 'mySum-54657651321987'

Я понимаю основную идею, но почему хэшируется только одна половина work_index? Важно ли хэшировать только часть, оставляя суффикс? Было бы неправильно делать

md5('%s-%d' % (sum_name, index)) so that the hash would be like '6gw8....hq6'

?

Я - парень по Java, поэтому я бы использовал md5 для хеширования, что означает, что я получаю идентификатор, например, 'mySum' + 32 символа. (Очевидно, я хочу, чтобы мои идентификаторы / ключи были здесь как можно короче.) Если бы я мог хэшировать всю строку, мой идентификатор был бы всего 32 символа.

Или вы бы предложили использовать что-то еще для хеширования?

1 Ответ

1 голос
/ 08 июня 2010
...