BLOB - ukladat soubory v DB, nebo na disku? – MySQL – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

BLOB - ukladat soubory v DB, nebo na disku? – MySQL – Fórum – Programujte.comBLOB - ukladat soubory v DB, nebo na disku? – MySQL – Fórum – Programujte.com

 

tux.martin0
Newbie
1. 11. 2013   #1
-
0
-

Ahoj,

mam priblizne takovouto tabulku:

https://db.tt/0iu0dfxOPřipojen obrázek.

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...

Připojen obrázek.

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?

Nahlásit jako SPAM
IP: 93.89.146.–
peter
~ Anonymní uživatel
3981 příspěvků
1. 11. 2013   #2
-
0
-

Zalezi na tom, co ti dovoli server. Na hostingu je obvykle omezeni, co se smi a kolik, provadet s sql.

sql - vyhoda je snadna manipulace s udaji, k fotce si muzes pripojit spoustu jinych veci, rozmery, popisky a pod a vytahnes to snadno dotazem. Ale pro zobrazeni budes muset mit spesl php program, ktery prevede data z databaze jako obrazek. Lidi se ti nedostanou primo na fotku bez progrmu, kde si muzes overit jejich prava, coz je plus.

disk - snadna manipulace se souborem, neni treba php, ale pomocne udaje musis ukladat zvlast, o neco slozitejsi program a musis mit sloziteji resenou kontrolu opravneni, zablokovat slozku proti robotum a lidem bez prav, pripadne dovolit jen php programu, aby tahal fotky (coz je podobne slozite jako u sql)

100x100 - 10.000 x 3 barvy rgb, 30k je BMP. Ty rikas, ze mas 100x100 jpeg 20-50k? To je asi neco spatne, protoze v Gimpu ti vyrobim soubor 1-2k jpeg a mozna podobne i png

Ja treba davam prednost souborum, udaje do databaze nebo zadne. Nepotrebuji slozku zabezpecovat, at si klidne kdo chce fotky prohlizi. Nemusim pak resi slozite zabezpecovani, starat se o kesovani, resit limity sql, zatez serveru na sql,....

Nahlásit jako SPAM
IP: 2001:718:2601:400:0:5efe:...–
Jakub
~ Anonymní uživatel
905 příspěvků
6. 11. 2013   #3
-
0
-

#2 peter
pokud nemas opravdu hodne dobry duvod ukladat do DB binarni soubory, NEDELEJ TO (je to prasarna do relacni DB ukladat standardni soubory bez vazneho duvodu)!!!

Uloz si samotne soubory na disk a informace knim do DB ( na disk -->napriklad do slozky, ktera se bude jmenovat stejne jako PK tveho zaznamu z tab. "podrobnosti obrazku" v DB...)

Nahlásit jako SPAM
IP: 2001:1ab0:f15:0:d5e:2c05:...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 3 hosté

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý