Итак, следующий сценарий:
У меня есть несколько экземпляров веб-службы, которая записывает большой объем данных в хранилище Azure.Мне нужно иметь возможность группировать BLOB-объекты в контейнер (или виртуальный каталог) в зависимости от того, когда он был получен.Время от времени (в худшем случае каждый день) старые двоичные объекты обрабатываются, а затем удаляются.
У меня есть два варианта:
Вариант 1
Я создаю один контейнер с именем «blobs» (например), а затем сохраняю все блоги вэтот контейнер.Каждый большой двоичный объект будет использовать имя стиля каталога с именем каталога, являющимся временем его получения (например, "hr0min0 / data.bin", "hr0min0 / data2.bin", "hr0min30 / data3.bin", "hr1min45 / data.bin", ...," hr23min0 / dataN.bin "и т. д. - новый каталог каждые X минут).Объект, который обрабатывает эти большие двоичные объекты, сначала обрабатывает большие двоичные объекты hr0min0, затем hr0minX и т. Д. (И большие двоичные объекты все еще записываются при обработке).
Вариант 2
У меня есть много контейнеров, каждый из которых имеет имя в зависимости от времени прибытия (поэтому сначала будет контейнер с именем blobs_hr0min0, затем blobs_hr0minX и т. Д.) И всекапли в контейнере - это те капли, которые прибыли в указанное время.То, что обрабатывает эти блоги, будет обрабатывать один контейнер за раз.
Итак, мой вопрос, какой вариант лучше?Вариант 2 дает мне лучшее распараллеливание (поскольку контейнеры могут быть на разных серверах) или вариант 1 лучше, потому что многие контейнеры могут вызывать другие неизвестные проблемы?