Что считается случайным именем объекта в Google Cloud Storage? - PullRequest
0 голосов
/ 19 января 2019

В документах Google Cloud Storage указано:

Автоматическое масштабирование диапазона индексов может быть замедлено при использовании последовательных имен, таких как ключи объектов, основанные на последовательности чисел или отметке времени.

Рекомендуется использовать совершенно случайные имена объектов, чтобы помочь с высокими записями.

Это относится и к путям?Например, если у вас был путь /photos/ в вашем ведре, но имена объектов были случайными:

myBucketName/photos/FNDHEHF-image.jpg
myBucketName/photos/XDFDADD-image.jpg
myBucketName/photos/PORFNDF-image.jpg
myBucketName/photos/PDKWNDF-image.jpg

Хорошо ли вышеприведенный осколок?или путь /photos/ вызовет проблемы при высокой скорости записи, потому что это одно и то же имя?Потому что, насколько я понимаю, имя объекта включает полный путь к файлу.

Ответы [ 2 ]

0 голосов
/ 19 января 2019

Полное имя файла - весь путь - считается именем файла в облачном хранилище. На самом деле в облачном хранилище не существует «папок». Есть только пути, которые навязывают подобную папке организацию по вашему выбору. Из-за этого случайность в любом месте пути считается общей случайностью файла.

То, что в этом сообщении говорится, что вы не должны делать, это использовать последовательные числа, где пути различаются. Так что не делайте этого:

/foo/bar/1.jpg
/foo/bar/2.jpg
/foo/bar/3.jpg
....

Если предположить, что ваши 6 символов случайности равномерно распределены по всему диапазону этих 6 символов, этого должно быть достаточно.

0 голосов
/ 19 января 2019

Это хорошо масштабируется. Однако в приложении, над которым я сейчас работаю, мы используем более длинные имена файлов (я думаю, это 20 символов), чтобы значительно увеличить пространство имен и уменьшить вероятность коллизий.

...