Для того, чтобы приступить к решению вопроса, нужно определиться с:
Выделим сущности, на основании которых можно создавать базу данных.
Этих данных должно быть достаточно для того, чтобы находить по ним путь к файлам искомой программы.
В корневой папке Incoming будут помещаться папки с именем формата времени yyyymm (закачки за период одного месяца), внутри которых будут размещаться папки с названием программы/проекта, в которых, в свою очередь, должны находиться прилагаемые файлы.
Структура директорий:
Incoming/yyyymm/%sourcename%/sourcefiles
В корневой директории SrcArchive будут помещаться директории с именем формата времени yyyy (закачки за период одного года), внутри которых будут размещаться директории с названием программы/проекта, в которых, в свою очередь, должны находиться прилагаемые файлы.
Структура директорий:
SrcArchive/yyyy/%sourcename%/sourcefiles
INSERT INTO tablename VALUES (...)
Выбираются критерии поиска: по имени, по дате, типу лицензии и т.д.
SELECT ... FROM tablename WHERE ...