Autor Zpráva
Giga
Profil
Dobrý den višuju a že jsem tak smělý, zeptal bych se moudřejších :)

dávám dohromady databázi, kde bude ( asi jediná) tabulka obsahovat cca 11000 řádků.
Sóučástí shromažďovaných údajů jsou i obrázky. Typicky dva ke každému řádku.
Ale budou i výjimky, kdy k řádku bude patřit obrázků víc. Maximum neznám, přepokládám do deseti.

Jak navrhnout tabulku? Vyhradit deset sloupců pro názvy obrázků, i když bude většina prázdných?
A když těch obrázků bude náhodou 12, tak jak to zpracovat?

Míním použít MySQL ve spolupráci s PHP.
Kajman
Profil
Ukládat to do dvou tabulek, druhá s obrázky bude 1:N, takže tam bude tolik řádků, kolik je potřeba obrázků k jednomu řádku z první tabulky.
Keeehi
Profil
Giga:
Správně je mít dvě tabulky. V jedné budou ty údaje a v druhé obrázky. Strukrura obrázkové tabulky bude:
- identifikátor řádku první tabulky
- cesta k obrázku

Tato struktura ti umožní mít neomezený počet obrázků ke každému záznamu. Dva, deset ale klidně i těch dvanáct nebo i víc.
Giga
Profil
No jo, asi to bude lepší, mít dvě tabulky.

Děkuji.

A pro tu srandu - obrázky jsou poměrně malé (okolo 25 - 30 kB) a bude jich hodně (35000 ?)
Mám je držet jednotlivě v souborech, nebo poradíte něco jiného?
Kajman
Profil
Soubory nebo ukládat jako sloupec blob. Záleží, s čím se bude lépe pracovat při programování a zálohování. Pokud k tomu není omezený přístup dle uživatelů, tak bych to uložil do souborů - a raději i rozvrstvil do více adresářů.
Tomáš123
Profil
Kajman:
Prečo sa používa vrstvenie do viacerých adresárov?
Kajman
Profil
Tomáš123:
Občas bývaly nějaké výkonostní problémy způsobené programem nebo filesystémem, pokud byly ve složce třeba statisíce souborů nebo víc. Od té doby to raději vrstvím, když se jich očekává velký počet. Ale už si ani nevybavím, kde to přesně zlobilo, takže je možné, že už to potřeba není.
weroro
Profil
Kajman
Nebolo na linuxoch nejaké obmedzenie na 2^16-1 (65535) súborov v zložke, alebo to už neplatí?
tttt
Profil *
weroro:
Na linuxu ne, tohle omezení měl FAT32, který se používal až do Windows 98. S linuxem ho máš spojený pravděpodobně proto, že se používal jako společný FS, který fungoval na windows i na linuxu. Linuxový ext2 z roku 93 zvládal 2^64, ale prý tam byly problémy s výkonem od desítek tisíc.

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:

0