Как хранить пользовательские данные в базе?
База в вашем случае растет линейно, поэтому беспокоится не стоит. Впрочем, базы данных тем и отличаются всех прочих способов хранения (к примеру csv), что выдерживают огромное количество информации.Не забудьте сделать индекс по колонке с id пользователя.Теги обычно хранятся в другой таблице (и еще одна таблица для связи многое-ко-многим).Чаще всего хранят ссылку на изображение, разумеется. Но к примеру для GAE правильнее хранить изображения в базе. Впрочем, это не ваш случай, храните ссылки.
Это одна из нормальных форм реляционной модели.
Django позволяет абстрагироваться от непосредственного использования id пользователя, для этого следует использовать поле ForeignKey.
Для картинок используйте ImageField. Оно само положит картинку в файловую систему и в базу данных положит путь к файлу. Надо лишь в настройках проекта указать нужные каталоги. На начальном этапе и для небольших проектов этого вполне достаточно.