Ваши изображения должны быть названы уникально? Может ли процесс, который генерирует эти изображения, создавать одно и то же имя файла более одного раза? Трудно сказать, не зная, какое устройство создает имя файла, но сказать, что устройство «перезагружено», и после перезапуска оно начинает называть изображения так же, как в прошлый раз, когда оно «сбрасывалось» - если это такая проблема.
Кроме того, вы говорите, что вы получите 1 миллион изображений за месяц. Как насчет этого? Как быстро эти изображения будут продолжать заполнять файловую систему? Будут ли они завершаться в какой-то момент и выровняться примерно на 1 млн. ОБЩИХ изображений или оно будет расти и расти месяц за месяцем?
Я спрашиваю, потому что вы можете начать проектирование вашей файловой системы по месяцам, а затем по имиджу. Я мог бы предложить вам сохранить изображения в такой структуре каталогов:
imgs\yyyy\mm\filename.ext
where: yyyy = 4 digit year
mm = 2 digit month
example: D:\imgs\2009\12\aaa0001.jpg
D:\imgs\2009\12\aaa0002.jpg
D:\imgs\2009\12\aaa0003.jpg
D:\imgs\2009\12\aaa0004.jpg
|
D:\imgs\2009\12\zzz9982.jpg
D:\imgs\2010\01\aaa0001.jpg (this is why I ask about uniqueness)
D:\imgs\2010\01\aab0001.jpg
Месяц, год, даже день хорош для изображений типа безопасности. Не уверен, что это то, что вы делаете, но я сделал это с домашней камерой безопасности, которая делала снимки каждые 10 секунд ... Таким образом, ваше приложение может переходить к определенному времени или даже диапазону, в котором вы можете подумать, что изображение было сгенерировано. , Или вместо года, месяца - есть ли какое-то другое «значение», которое может быть получено из самого файла изображения? Некоторые другие дескрипторы, кроме примера даты, который я дал?
Я бы не стал хранить двоичные данные в БД. Никогда не было хорошей производительности / удачи с такими вещами. Не могу себе представить, что это хорошо работает с 1 миллионом изображений. Я хотел бы сохранить имя файла, и это все. Если они все будут JPG, тогда даже не храните расширение. Я хотел бы создать контрольную таблицу, в которой хранится указатель на сервер файла, диск, путь и т. Д. Таким образом, вы можете переместить эти изображения в другое поле и по-прежнему находить их. Вам нужно пометить тегами ваши изображения? Если это так, то вы захотите построить соответствующие таблицы, которые позволяют такого рода маркировки.
Возможно, вы / другие обсуждали эти идеи, когда я отвечал. Надеюсь, это поможет.