Adattáblák mennyisége egy adatbázison belül.
Sziasztok!
Szeretném megkérdezni, kinek van tapasztalata ebben a témában (Adattáblák mennyisége egy adatbázison belül.)?
Mennyit lehet létrehozni olyan táblából amiben átlagosan (táblánként) 100 rekord van?
Várom a véleményeiteket, üdv
s_volenszki
■ Szeretném megkérdezni, kinek van tapasztalata ebben a témában (Adattáblák mennyisége egy adatbázison belül.)?
Mennyit lehet létrehozni olyan táblából amiben átlagosan (táblánként) 100 rekord van?
Várom a véleményeiteket, üdv
s_volenszki
Pontosan én sem tudom
De azt hiszem, hogy komoly tervezési hibák sorozata vezethet oda, hogy "végtelen számú" táblát kelljen létrehozni úgy, hogy csupán 100 rekord legyen benne.
...tervezési hiba...
Amikor megnyitottam ezt a topikot, már akkor gondoltam, hogy ez a kérdés szinte mindenkiben az optimalizálatlanság gondolatát fogja felmeríteni.
Nos, ez nem így van. Ez egy automatikusan regisztrálható (zárt közösségen belül) webalkalmazás, amihez a jelenlegi szerveren csak az aldomaint tudom php-ből létrehozni, az adatbázisokat nem. Ezért aztán átalakítottam az alkalmazást, és egy adatbázison belül egy egyedi prefixel lát el minden táblát (az aldomain tábla id-je), így működhet szolgáltató váltás nélkül is.
Már gondoltam arra is, hogy összevonom a táblákat és inkáb átírom az alkalmazás adatbázis műveltetési rutinjait (minden táblába teszek +1 azonosítót, ami távoli kulcs az aldomaines táblából) és akkor elég egy garnitúra tábla, de ha elbírja a táblákat (kb 600-800db) akkor a távolabbi céloknak jobban megfelel (költözés olyan szolgáltatóhoz, ahol php tud adatbázist is létrehozni).
Ettől eltekintve vettem az adást, és szívesen fogadok további ötleteket :)
s_volenszki
lehet hogy sügér vagyok ehhez
1. szét akarod osztani a tárhelyedet és akik nálad regisztrálnának azok is létrehoznak új szolgáltatásokat és hozzá táblákat, ami minden csak nem épeszű megoldás és feltételezem nincs is így.
2. létrehozol szolgáltatásokat és azokat akarod felhasználóknak szétosztani, de akkor meg csak annyi tábla kell, amennyi kiszolgálja az általad létrehozott szolgáltatások adatbázisigényét, plusz kezeli a felhasználóidat. A felhasználókhoz meg hozzárendeled az aldomaint és nyilván a saját beállításaikat a te szolgáltatásodhoz.
Tökéletesen jól látod!
A második variáció hajaz a legjobban a valóságra, és a soktáblásdi, csak azért játszana, hogy ha megszeretik a szolgáltatást és megfizetik, akkor kapnak mindenből sajátott, és a különálló táblákat egyszerűbb lenne átvinni a privát adatbázisukba.
Ellenben úgy gondolom, hogy valóban az lesz az optimális megoldás, ha egy subdomain tábla id-it hozzáadom az alkalmazás tábláihoz mint távoli kulcs, így egy garnitúra tábla elláthatja az összes aldomain kiszolgálását.
Köszi a véleményt, sokat segített.
s_volenszki
Jogosultságilag cink
Különösen akkor van probléma, ha pl MySQL esetén InnoDB-t használsz, ugyanis a MyISAM motorral ellentétben itt az egész adatbázis egy fájlban tárolódik, tehát a filerendszer határokat szab. 2-3-4 giga... ami nem olyan sok... szolgáltatástól függ, de ezzel óvatosan.
Ha egy frontendet is adsz hozzá, akkor a dumb copy módszer helyett érdemes optimalizálni, ha meg saját adatbázist akarnak, akkor inkább copyzni, mint sem hogy állandóan esetleg lassú legyen a szolgáltatás.
Az alkalmazás jellege.
s_volenszki
Akkor minek sok tábla?
Gyanítom, hogy a webszolgáltatók
...tudok új adatbázist csinálni...
De valóban egy garnitúra táblával kell megoldani (így logikus), hiszen ha költözésre kerül a sor, mysql-ben tudok exportálni szűrési feltétel eredményét is.
Köszönöm a hozzászólásokat.
s_volenszki
Nekem nincs tapasztalatom
mindenféle
Üdv,
Felhő