Извините, если я понимаю какую-либо превратно терминологию здесь, но надо надеяться Вы получите то, что я имею в виду.
Я использую Windows Azure Cloud Storage для хранения огромного количества маленьких файлов (изображения, 20 КБ каждый).
В минуту эти файлы все хранятся в корневом каталоге. Я понимаю, что это не нормальная файловая система, поэтому, возможно, базируйтесь, не правильный термин.
Я попытался найти информацию о долгосрочных эффектах этого плана, но без удачи поэтому, если бы кто-либо может дать мне некоторую информацию, я был бы благодарен.
В основном я собираюсь столкнуться с проблемами, если числа файлов, хранивших в этом корне, заканчиваются в сотнях тысяч/миллионов?
Спасибо,
Steven
У меня была аналогичная ситуация, когда мы хранили ~ 10M небольших файлов в одном контейнере больших двоичных объектов. Доступ к отдельным файлам через код был нормальным, и проблем с производительностью не было.
Проблемы возникают с управлением таким количеством файлов вне кода. Если вы используете обозреватель хранилища (тот, который поставляется с VS2010 или любой из других), те, с которыми я столкнулся, не поддерживают возвращаемые файлы по префиксному API, вы можете указать только первые 5 КБ, затем следующие 5К и так далее. Вы можете увидеть, насколько это может быть проблемой, если захотите просмотреть 125 000-й файл в контейнере.
Другая проблема заключается в том, что нет простого способа узнать, сколько файлов находится в вашем контейнере (что может быть важно для точного определения стоимости всего этого хранилища BLOB-объектов), не написав что-то, что просто повторяет все капли и считает их.
Это было легко решить для нас, так как наши капли имели последовательные числовые имена, поэтому мы просто разбили их на папки по 1k элементов в каждой. В зависимости от того, сколько элементов у вас есть, вы можете сгруппировать 1К из этих папок во вложенные папки.
Краткий ответ: Нет
Средний ответ: Kindof?
Длинный ответ: Нет, но если вы запросите список файлов, он вернет только 5000. Вам нужно будет запрашивать каждые 5 КБ, чтобы получить полный список в соответствии с этой страницей MSDN.
Edit: Root отлично подходит для его описания. 99,99% людей будут глотать то, что вы пытаетесь сказать.