Ukládání obrázků – DB či FS

cafesk8
Člen | 103
+
0
-

Zdravím,

chtěl bych se zeptat na doporučení jakým způsobem by bylo lepší/rychlejší ukládat/načítat obrázky. Uživatel vytvoří inzerát a v rámci formuláře nahraje 1 – 5 fotografii. Teď přemýšlím, zda by bylo efektivnější pouze obrázky přejmenovat na něco typu ID_INZERATU-NAZEV_SOUBORU.jpg a vše ukládat do jedné složky a při zobrazení inzerátu potom podle ID_INZERATU pomocí Finderu fotografie najít a vypsat anebo by bylo lepší při odeslání formuláře vytvořit např. složku INZERATY/ID_INZERATU a poté vypsat všechny soubory z této složky. Dále mě ještě napadá, zda by bylo lepší si do DB k inzerátu uložit také např. cestu k fotografiim, že by to zrychlilo/unsnadnilo práci s Finderem.

Nebo něco úplně jiného? Jak byste to řešil Vy?

Děkuji za konstruktivní komentáře.

Tharos
Člen | 1030
+
+4
-

V tomto případě určitě nic nezkazíš cestou:

Vlastní soubory s obrázky – filesystem
Metadata k nim – databáze

Finder bych z toho úplně vynechal… Ty ty obrázky nemusíš hledat, ty můžeš rovnou vědět, kde jsou. :)

Editoval Tharos (19. 6. 2018 11:36)

cafesk8
Člen | 103
+
0
-

Takže si v DB do tabulky s inzeráty přidat třeba sloupec, kde by byly cesty k obrázkům? Např.: {[‚/public/ID_INZERATU/bar.jpg‘,‚/public/ID_INZERATU/foo.jpg‘]} a poté je rovnou vypsat dle tohoto sloupečku?

Tharos
Člen | 1030
+
0
-

Já bych metadata k těm obrázkům určitě ukládal do samostatné tabulky. Moje schéma by vypadalo zhruba následovně:

+------------------+
| advertisement    |
+------------------+
| id               |
+------------------+

+------------------+
| image            |
+------------------+
| id               |
| advertisement_id |  – Cizí klíč do tabulky advertisement
| filepath         |  – Tady by bylo například to /public/35398723/bar.jpg
| width            |
| height           |
| alt              |
+------------------+

Určitě bych takhle evidoval i width, height a alt, protože to se může hodit při generování img elementů…

No a pak bych v té tabulce určitě měl i další metadata, určitě nějaké pořadí, datum nahrání, pravděpodobně MIME typ…

Editoval Tharos (19. 6. 2018 12:47)

cafesk8
Člen | 103
+
0
-

Tharos napsal(a):

Já bych metadata k těm obrázkům určitě ukládal do samostatné tabulky. Moje schéma by vypadalo zhruba následovně:

+------------------+
| advertisement    |
+------------------+
| id               |
+------------------+

+------------------+
| image            |
+------------------+
| id               |
| advertisement_id |  – Cizí klíč do tabulky advertisement
| filepath         |  – Tady by bylo například to /public/35398723/bar.jpg
| width            |
| height           |
| alt              |
+------------------+

Určitě bych takhle evidoval i width, height a alt, protože to se může hodit při generování img elementů…

No a pak bych v té tabulce určitě měl i další metadata, určitě nějaké pořadí, datum nahrání, pravděpodobně MIME typ…

Díky za tip :)

Editoval cafesk8 (3. 10. 2018 15:09)