Има ситуация, в която можем да имаме поле VARCHAR за аватара на потребителите и да съхраняваме името на изображението им в това поле, както повечето приложения.
Другият подход, който ме интересува, е премахването на това поле и съхраняването на аватара на потребителя в папка като avatars
, в която името на файла на аватара е MD5 на потребителския идентификатор. След това всичко, което трябва да направим, е да направим справка в папката на аватара, за да видим дали там има някакъв MD5(userid), ако няма, показваме картината по подразбиране.
Въпросът е кой подход би бил по-ефективен за огромен сайт за социални мрежи, оглеждайки се в папката на аватара или полето за аватар в потребителската таблица?
Трябва също да отбележа, че имаме папки въз основа на дата, например имаме папка на името на 1000
и след това друга папка с име от 2000
. Например /avatar/1000
съдържа хиляда картина и т.н.
трябва ли аватарът на потребителя да бъде поле в таблица ИЛИ търсене във файлови системи?
Отговори (1)
Наличието на едно извикване към базата данни би било по-ефективно, отколкото извикването да изтегли данните за потребителя от базата данни и отделно извикване към файловата система, за да провери дали файлът съществува.
person
John D
schedule
16.06.2012