mysql - pocet tabuliek
-
S.T.E.A.L.T.H
Light Professional
- Príspevky: 933
- Registrovaný: 31 jan 2010, 14:44
- Bydlisko: Pegasus Galaxy
mysql - pocet tabuliek
Zdravím vospolok
Mám na Vás takú otázočku. Keď ukladám dáta do mysql databázy a mám to riešené takým štýlom, že každému prípadnému užívateľovi je priradená vlastná tabuľka, tak či je to je nejaký problém. Pre databázu etc. Čo sa výkonu týka je výhodnejšie robiť všetko v jednej tabuľke alebo je to v podstate jedno.
Ďakujem
Mám na Vás takú otázočku. Keď ukladám dáta do mysql databázy a mám to riešené takým štýlom, že každému prípadnému užívateľovi je priradená vlastná tabuľka, tak či je to je nejaký problém. Pre databázu etc. Čo sa výkonu týka je výhodnejšie robiť všetko v jednej tabuľke alebo je to v podstate jedno.
Ďakujem
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: mysql - pocet tabuliek
je to hlúposť, a smrdí to zlým návrhom databázy
-
S.T.E.A.L.T.H
Light Professional
- Príspevky: 933
- Registrovaný: 31 jan 2010, 14:44
- Bydlisko: Pegasus Galaxy
Re: mysql - pocet tabuliek
Ja sa v podstate len učím, ale tak zaťažuje to nejako viac systém ako jedna tabuľka?
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: mysql - pocet tabuliek
to záleží od veci čo s tým systémom budeš robiť
Re: mysql - pocet tabuliek
Ked budes mat 5000 userov, co potom?
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: mysql - pocet tabuliek
problém ani nie je v počte, ale v operáciach ako som už napísal. MySQL nemá žiadne limity na počet tabuliek (tie sú dané iba operačným systémom, miestom na disku a pod.). Takže stačí aby mal napríklad iba 5 užívateľov, no bude z nich chceť nájsť jedného ktorý vyhovuje nejakému kritériu. Alebo bude mať 3 užívateľov, a teraz sa registruje nový s rovnakým menom (dve tabuľky s rovnakým názvom nemôže mať). Je tam proste kopec iných problémov. To množstvo je najmenší problémtest napísal:Ked budes mat 5000 userov, co potom?
-
weroro
Flash coder
- Príspevky: 3206
- Registrovaný: 14 feb 2009, 22:34
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: mysql - pocet tabuliek
To by ma zaujímalo ako by sa riešilo prihlasovanie ak by bolo dovolené aby mali užívatelia rovnaké nicky.audiotrack napísal:Alebo bude mať 3 užívateľov, a teraz sa registruje nový s rovnakým menom (dve tabuľky s rovnakým názvom nemôže mať).
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: mysql - pocet tabuliek
na zaklade mailu 
-
S.T.E.A.L.T.H
Light Professional
- Príspevky: 933
- Registrovaný: 31 jan 2010, 14:44
- Bydlisko: Pegasus Galaxy
Re: mysql - pocet tabuliek
Tak taky problem, zeby som potreboval vyhladavat medzi tabulkami nemam, na to mam vyhradenu jednu, kde su vsetci uzivatelia, ale napr. co potrebujem, je riesit chat. Mam to riesene tak, ze uzivatelia medzi sebou maju tabulky a tam sa zapisuje konverzacia. Je to pre mna takto vyhodne. Len neviem, ako sa to riesi niekde inde. Ja som to vymyslel nejako a neviem, ci to nebude zatazovat system.
-
weroro
Flash coder
- Príspevky: 3206
- Registrovaný: 14 feb 2009, 22:34
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: mysql - pocet tabuliek
Chat? Prečo má každý užívateľ svoju tabuľku do ktorej sa budú ukladať jeho správy? tie správy sú medzi nejakým konkrétnym užívateľom alebo sú to správy odoslané verejne a môžu ich čítať všetci?
Ja v mojom chate, kde sa správy posielajú verejne podobne ako na pokeci v miestnosti, to riešim takto:
Mám tabulku s uzivatelmi kde je - ID : nick : heslo : práva : aktivita : nastavenie1: nastavenie2: nastavenie3: nastavenie4 : BANstatus
potom mám tabuľku so spravami: ID : Odosielatel : Prijimatel : správa : cas a datum : vynimka
Ja v mojom chate, kde sa správy posielajú verejne podobne ako na pokeci v miestnosti, to riešim takto:
Mám tabulku s uzivatelmi kde je - ID : nick : heslo : práva : aktivita : nastavenie1: nastavenie2: nastavenie3: nastavenie4 : BANstatus
potom mám tabuľku so spravami: ID : Odosielatel : Prijimatel : správa : cas a datum : vynimka
-
S.T.E.A.L.T.H
Light Professional
- Príspevky: 933
- Registrovaný: 31 jan 2010, 14:44
- Bydlisko: Pegasus Galaxy
Re: mysql - pocet tabuliek
No jo, verejne by som to tiez tato riesil, ale toto je cisto sukromne, verejne tam nie je nic. Mam to spravene tak (mozno debilne, ale ked som to robil, tak ma to tak napadlo), ze ked si niekto pridava niekoho k priatelom, tak sa automaticky vytvara tabuka "user1_user2_chat", ale to je v podstate neunosne vela tabuliek. Na druhej strane narvat to do jednej tabulky, tak to mam na kazdy enter v chat okne jeden riadok, co je este hrosie. A nemam ani tusaka ako sa ato riesi niekde "profesionalne".
-
javatar
Hardcore addict
- Príspevky: 6112
- Registrovaný: 12 aug 2010, 14:49
- Bydlisko: I don't exist at all.
Re: mysql - pocet tabuliek
profesionalne - asi obdobne ako weroro a ver tomu, ze si usetris kopu casu a starosti ak to spravis ako ti pise
-
S.T.E.A.L.T.H
Light Professional
- Príspevky: 933
- Registrovaný: 31 jan 2010, 14:44
- Bydlisko: Pegasus Galaxy
Re: mysql - pocet tabuliek
Len ja to nechem mat verejne...
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: mysql - pocet tabuliek
to je jedno či verejne alebo neverejne. Tvoj argument je ako "staviam auto. Kolesá mi netreba a volant dám na strechu. Veď ja ho chcem iba v garáži, nepotrebujem na ňom jazdiť"
Tvoj návrh stojí za hovno a bude nefunkčný. Možno bude niečo fungovať (ako-tak) ale budeš riešiť plno problémov na ktoré narazíš neskôr a ich vyriešenie nebude ani zďaleka tak efektívne
Tvoj návrh stojí za hovno a bude nefunkčný. Možno bude niečo fungovať (ako-tak) ale budeš riešiť plno problémov na ktoré narazíš neskôr a ich vyriešenie nebude ani zďaleka tak efektívne
-
S.T.E.A.L.T.H
Light Professional
- Príspevky: 933
- Registrovaný: 31 jan 2010, 14:44
- Bydlisko: Pegasus Galaxy
Re: mysql - pocet tabuliek
OK, tak sa spytam takto, bude to v pohode, ak od vsetkych uzivatelov budu sukromne spravy v kope v jednej tabulke, ktora bude mat po milu jarmilu riadkov?
Re: mysql - pocet tabuliek
S.T.E.A.L.T.H - Sukromne spravy riesis zase tak, ze budes mat ID spravy, ID odosielatela, ID prijmatela, predmet spravy, text spravy. A to vsetko v jednej tabulke. To, ze tam bude milion sprav a teda milion riadkov nevadi, na to je DB stavana.
-
S.T.E.A.L.T.H
Light Professional
- Príspevky: 933
- Registrovaný: 31 jan 2010, 14:44
- Bydlisko: Pegasus Galaxy
Re: mysql - pocet tabuliek
Akoze ja nemam problem to prerobit ani nemam problem s tym aby som nevedel ako na to, chcel som vediet, ci to "musim" prerabat vzhladom na zatazenie systemu, nie na sposob riesenia. Btw, aj ked v konecnom dosledku to prerobim na jednu tabulku na Vasu radu...no, aj tak by som rad vedel, ci viac tabuliek s podstatne menej datami zatazuje db server viac ako jedna s kvantami dat.
-
axxis
Addict
- Príspevky: 3690
- Registrovaný: 29 máj 2007, 21:53
- Bydlisko: Spálené mlyny
- Kontaktovať používateľa:
Re: mysql - pocet tabuliek
Tento a mnoho dalsich dovodv je preco by malo byt primarnym klucom umelo vytvorene ID (kludne cislo zo sekvencie)weroro napísal: To by ma zaujímalo ako by sa riešilo prihlasovanie ak by bolo dovolené aby mali užívatelia rovnaké nicky.
Funkcionalitu primarneho kluca na uzivatelsky prijemnejsi atribut potom vynutis pomocou unique
odpoviem rozdiel, ktory by si dostal v Oracle databazi, mySQL nepoznamS.T.E.A.L.T.H napísal:Akoze ja nemam problem to prerobit ani nemam problem s tym aby som nevedel ako na to, chcel som vediet, ci to "musim" prerabat vzhladom na zatazenie systemu, nie na sposob riesenia. Btw, aj ked v konecnom dosledku to prerobim na jednu tabulku na Vasu radu...no, aj tak by som rad vedel, ci viac tabuliek s podstatne menej datami zatazuje db server viac ako jedna s kvantami dat.
ak mas jednu tabulku a v nej 5000 riadkov, z ktorych ma kazdy pre lahke pocitanie 2kb tak mas jediny zaznam v systemovom katalogu, ktory ma 15kb a 10000kb dat
ak by si spravil pre kazdeho vlastnu tabulku tak mas tych istych 10000kb dat plus 75000kb v systemovom katalogu a navyse velky bordel v db. Chces niekomu grantovat alebo odobrat prava? 5000 zbytocnych operacii ked to mohla byt jedna. Chces vyhladavat v jednej tabulke - je ulozena ako B+ strom ergo to ide rychlo, navyse mozes tvorit indexy alebo ju priamo specialne ulozit fyciky (cluster, hashovana tabulka....), mozes spajat s ostatnymi tabulkami....
Ak by si pre kazdeho uzivatela spravil osobitnu tabulku stratis vsetku funkcionalitu, ktoru kedy pre Teba kto naprogramoval, redo a undo log (to mozes chapat ako ochranu proti chybovosti) a ani nehovorim ako si spomalis dotazovanie na viac ako jednu polozku (miesto rychleho selectu budes spajat tabulky)
-
javatar
Hardcore addict
- Príspevky: 6112
- Registrovaný: 12 aug 2010, 14:49
- Bydlisko: I don't exist at all.
Re: mysql - pocet tabuliek
stealth - verejne, ci neverejne to je jedno - profesionalne riesenia maju byt jednoduche, nenarocne na HW, rychle ako v runtime tak na naprogramovanie - ja osobne by som to spravil ako pise weroro bez ohladu ci by som riesil chat mna s priatelkou alebo chat pol miliona ludi
-
S.T.E.A.L.T.H
Light Professional
- Príspevky: 933
- Registrovaný: 31 jan 2010, 14:44
- Bydlisko: Pegasus Galaxy
Re: mysql - pocet tabuliek
Ok...dakujem za rady, mam co prerabat 