2010-06-07 2 views
2

Я читаю PDF, который Бретт Слаткин опубликовал для Google I/O 2010:
«Data pipelines with Google App Engine».Почему только суффикс work_index хэширован?

In this video (Вентилируемый частично) Бретт говорит, что 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 для хэша, что означает, что я получаю id как «mySum» + 32 символа. (Очевидно, я хочу, чтобы мои идентификаторы/ключи были как можно короче здесь.) Если бы я мог хэш всей строки, мой идентификатор был бы всего 32 символа.

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

ответ