Идеальная структура каталога для веб-приложения

StackOverflow https://stackoverflow.com/questions/2651700

  •  27-09-2019
  •  | 
  •  

Вопрос

Я собираюсь создать пользовательский веб-сайт и должен будет хранить фото, документы и другие данные для каждого пользователя.

Если я возьму глупое число, как 1 000 000 000 пользователей, я верю, чем одна папка с 1 000 000 000 не будет самым быстрым в мире! Так что я думал о создании чего-то вроде

1-й уровень: [AZ] 2-й уровень: [AZ] 3-й уровень: [AZ

Там Бобби будет в / б / у / б / по

Но это также означает, что он не будет распространяться, поскольку будет очень мало пользователей, начиная с AZ и еще многое с AM, S, L ...

Поэтому я думал использовать идентификатор пользователя, такой как «000000000001», «000000000001» etc ...

1-й уровень: [000-999] 2-й уровень: [000-999] 3-й уровень: [000-999

Поэтому данные пользователя 000000000001 будут храниться в / data / 000/000/000/001, то я обязательно будет максимум 1000 папок на каждом уровне.

Что вы, ребята, думаете об этом, что я должен делать или не делать?

Сервер будет запущен CentOS 5.4 с Ext3 на RAID 1, если в I / O GOOT слишком плохо, я, вероятно, пойду на RAID 10.

Это было полезно?

Решение

Хеш-функция обеспечивает способ распространения большого количества данных по всей легкоисплетенную структуру.

Смотрите этот связанный вопрос: Зачем использовать хеширование, чтобы создать пути для больших коллекций файлов?

А также попробуйте просматривать результаты Google для Каталог перемешивается.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top