Autor Zpráva
tuxmartin
Profil
Ahoj,

mam priblizne takovouto tabulku:


a resim problem jak ukladat fotku uzivatele. Rozliseni odhaduji asi na 100x100px a velikost 20-50kB. Me se zda nejlepsi ukladat fotky na disk a pojmenovat je napr. podle ID z tabulky. Par lidi me ale presvedcuje, ze je lepsi BLOB v databazi. Ja jsem BLOB nikdy na nic nepouzival, tudiz s nim nemam vubec zadne zkusenosti.

Pro 10 zaznamu je to jedno, ale kdyz budu mit v tabulce treba 5 nebo 50 milionu uzivatelu a kazdy bude mit 50kB fotku, jaky bude vykon ve srovnani se soubory?

Me se vic libi reseni se soubory na disku, ale rad se necham poucit.

Pri vysokem provozu muze staticke fotky posilat webserver (nginx pred apachem) a nemusi bezet proces PHP s otevrenym spojenim do DB. Fotky taky muzou byt snadno rozlozeny na vice serverech. U DB je zase vse resene "jednim zpusobem" - k intum, varcharum i binarnim datum se pristupuje stejne.

Kdyby fotky meli treba 3MB, mela by DB jeste vyznam?

Nasel jsem stary clanek z roku 2004, kde BLOB kritizuji. Ale za 9 let se urcite dost zmenilo...

U DB bude urcite snadny prenos na jiny server. Zadne cesty k souborum. Mozna je v DB lepe resene hledani fotky, nez u souboroveho systemu na disku. Souborovy system ma take limit souboru v jednom adresari.

Co je podle vas lepsi a proc?
Kajman
Profil
Pokud máte potřebu obrázky zálohovat a můžete využít např. rsync, tak může být rozhodujícím kritériem pro výběr způsobu ukládání čas potřebný pro jednoduše řešenou zálohu. Kdy rsync změn + malý .sql soubor bývá rychlejší než jeden velký .sql soubor (hlavně u většího počtu větších souborů).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: