Как лучше хранить фото-данные?
лучше хранить только ссылку на фотографию - это более гибко и оптимальнее по производительности. Приведу простой пример: допустим нужно вывести информацию о 30 пользователях списком с фотографиями, если использовать ссылки вот что мы получим:
1. У нас будет возвращать из базы минимальный объем данных (блоб поля сильно увеличивают вес записи)
2. Мы сможем при необходимости удобно сортировать, выбирать данные по URL, в отличии от BLOB
3. В случае веб-ресурса - мы сможем кешировать картинки, blob-поле полноценно этого не позволит зделать
4. Опять таки в случае веб-ресурса, мы можем разместить эти картинки на 100500 серваках, что бы распределить нагрузку, (а blob этого не позволит сделать)
Я приведу преимущества хранения в БД перед хранением ссылок:
1. Данные и фото хранятся в одном месте - в БД. При перемещении БД на другой сервер перемещается вся база с фотографиями. В случае хранения ссылок вы данные и фотографии перемещаете отдельно и после перемещения вам нужно будет обновить ссылки в новой БД.
2.  Положенная в БД фотография доступна всегда. В случае ссылок на другие ресурсы они могут оказаться недоступными. Их могут удалить, переместить, переименовать, так как не очевидно, что на эти фотографии есть ссылки из какой-либо БД.
3. Транзакционность. При добавлении/изменении фото, если у вас случится проблема посередине процесса, то запись не будет добавлена/обновлена. В случае хранения ссылок может оказаться, что файл будет добавлен, а запись в БД не сохранится или наоборот запись в БД обновится, а сохранение файла не пройдёт.
4. Из 2 и 3 вытекает необходимость, в случае хранения ссылок, периодически проверять соответствие между ссылками и файлами.