Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- Graphics: Telefonvásárlási kálváriám....avagy clickbait cím: Horror a hardveraprón
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Szólánc.
- Szellem.: ATK Blazing Sky X1 V2 Extreme 2.0. Tényleg 2.0-a!
- Luck Dragon: Asszociációs játék. :)
- Ketogén étrend
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- gerner1
- MasterDeeJay: Egy nem átlagos Asus videókártya (GTX950M 2GB GDDR3)
Új hozzászólás Aktív témák
-
martonx
veterán
válasz
WolfLenny
#1199
üzenetére
Egyrészt a PHP mint interpreter nyelv az ilyen műveletekre alapvetően kb. 100X lassabb (lehet, hogy cak 10-szer, erről ne nyissunk vitát), mint egy compiled (pl. java, .net) nyelv.
Másrészt ha ezen a szerencsétlen P4-esen még emellett egy MySQL-t is futtatsz, és mindehhez egy ősrégi lassú vinyú kerreg alatta, akkor nem csoda ez a futásidő. -
martonx
veterán
válasz
WolfLenny
#1148
üzenetére
ez esetben abszolút nem kell erős hardver a mysql alá. Egy mai bármilyen alap szerver megteszi (kettő mag, pár guriga memória, egy kis raid tömb mondjuk 3 vinyóból, ha fontos a redundancia). Azért ha nem egy 10 éves egy magos xeon-on futtatnátok, az nem lenne hátrány.
-
martonx
veterán
válasz
WolfLenny
#1146
üzenetére
MySQL 5.1-től fölfelé 64Tb-os 1-1 adatbázis méretkorlátja. Szerintem ennek a közelében sem lesztek.
Vasat nehéz javasolni, pláne, hogy eddig csak a havi bejövő adatmennyiségről volt szó. Tudni kellene, hogy a bejövő adatok írása mennyire oszlik szét időben, a lekérdezések mennyire történnek időben szétszórtan, illetve hány konkurens felhasználóra számítotok.
Általános tapasztalat, hogy legtöbbször a lemezműveletek viszik el a sok időt, még akkor is ha az adott DB szervernek sok memória áll a rendelkezésére. Manapság a sokmagos processzorok korában a processzor egyre kevésbé a szűk keresztmetszet. -
martonx
veterán
válasz
WolfLenny
#1138
üzenetére
1 táblába raknám az adatokat. Aztán ha mégis lassú a dolog, akkor lehet indexekkel játszani, táblát particionálni stb...
Illetve ha évenkénti lekérdezéseitek vannak, egy év múlva megnézve az SQL teljesítményt, elgondolkodnék azon, hogy érdemes-e az adatokat évenként archiválni.
Nagyon fontos lenne mindehhez tudni, hogy milyen a vas a MySQL szerveretek alatt. Mivel totál kezdő vagy, erős a gyanúm, hogy ti egy szimpla hoszting cég amúgy is gyengécske MySQL szerverén fogtok osztozni sokadmagatokkal. Ebben az esetben, bármit is javasolnánk elégtelen lesz az SQL teljesítmény, sőt az első adatbetöltés után maga a hoszting cég fog nyakon vágni titeket, amiért fél órára legyilkoltátok a szerverüket. -
rum-cajsz
őstag
válasz
WolfLenny
#1138
üzenetére
Nekem foleg oracle-vel vannam tapasztalataim, de ugy sejtem a mysql sem lehet nagyon mas.
El kell dontened, hogy mi a feladatok prioritasa es az alapjan kell dontened.
Akkor eri meg a sok tabla, ha nagyom sok adat (tobb szaz millio) kerul bele adott idoitervallumon belul, es a regi adatokat folyamatosan ki akarod torolni.
Szinte barmelyik SQL adatbazis elboldogul a 100-500 millio sorokkal, ha jol van idexelve, van eleg memoriad, es eleg gyors vinyok vannak alatta.
A havi bontasokkal csak szivatod magad szerintem.
Egyreszt gondoskodni kell arrol, hogy letrejojjon az uj tabla. masreszt folyamatosan karban kell tartanod a viewt, harmadreszt az union miatt sokkal lassab lesz a lekerdezesed, mintha egy tablaben lenne az adat.
VISZONT.
Ha egy tablaban van az adat, es torolni akarsz belole idonkent sok adatot (havonta partizmillio sort), akkor a torles elegge megfoghatja a tabla elereset, es ilyenkor celszeru a tabla bontasa.Remelem tudtam segiteni. kerdezz batran.
-
Sk8erPeter
nagyúr
válasz
WolfLenny
#1138
üzenetére
Nem azt mondom, hogy a view lassabb, hanem UNION-nal bohóckodni itt felesleges - ha a havi lekérdezés extrém ritka, akkor főleg biztos, hogy egy táblába tenném. Teljesen felesleges szétbontani. Szerintem jóval könnyebben optimalizálható a tábla, de majd remélem martonx megmondja a tutit, hogy mi a helyzet ezzel.
-
Sk8erPeter
nagyúr
válasz
WolfLenny
#1135
üzenetére
Olvasd el még egyszer, amiket írt neked martonx. Pl. ezt, elég érthetően írja le.
Szerk.:
azt írja, hogy "egy SQL tábla kb. bármennyi adatot elbír", ergo tárolhatsz bármennyi adatot így, de lehet, hogy hosszú lekérdezési időkkel kell számolnod.
Gyorsaság szempontjából - ha azonos hónapon belül lekérendő adatokról beszélünk - lehet, hogy gyorsabb külön táblákban tárolni, de aztán kérdés, hogy milyen lekérések gyakoribbak, havi szintű vagy hosszabb időtartamú, aztán lehet, hogy a UNION-nal való lekérdezések, VIEWS-ba rakás ront a teljesítményen, meg "logikailag" nem biztos, hogy szerencsés a különbontás.
Na jó, a hsz. végére már magamat is belekavartam, szóval nem tudom, mi lenne az optimális megoldás.
-
martonx
veterán
válasz
WolfLenny
#1126
üzenetére
Egy SQL tábla kb. bármennyi adatot elbír. Távközlésben DB admin ismerős mesélte, hogy van olyan táblájuk, amibe napi 130 millió sor kerül bele.
Nálunk is vannak szép nagy táblák.
Másrészt úgy látom, hogy ti PHP + MySQL-t akartok használni, ahol gondolom a MySQL ingyenes, nem Enterprise verzió, és nincsenek fürtözött SQL szervereitek a MySQL mögött. Ilyenkor szép hosszú keresési időkkel számolhattok, egy - egy lekérdezésnél. De file-ában letárolni az adatokat, és abban keresni, az még rosszabb.A jogosultságos kérdésben kevered a szezont a fazonnal. Az SQL szintű user jogosultságok általában köszönő viszonyban sincsenek az alkalmazás szintű user jogosultságokkal. Általában 1-2 SQL usert szoktak létrehozni, 1-et a DB adminnak full jogkörrel, és 1-et az alkalmazásnak csak a szükséges jogkörrel. Utána minden más jogisultságot az alkalmazáson belül szoktak intézni.
-
Sk8erPeter
nagyúr
válasz
WolfLenny
#1112
üzenetére
Többek közt a táblák megfelelő indexelésével... Query cache használatával...
EXPLAIN segít, hogy hol kellene többek közt az indexelésen javítani...
Itt van pár tipp.
Aztán még számtalan más oka lehet.Túl általánosan írtad le a problémádat ahhoz, hogy konkrétan tudjunk segíteni. De a fentiek közül valamelyik segíthet.
===
Szerk.: egyébként -Zeratul- írt neked egy elég jó választ itt korábban, de arra nem reagáltál... ez végül is megoldotta az előző problémádat? Nem árt - illik - válaszolni az illetőnek, ha segítséget kaptál...
-
Sk8erPeter
nagyúr
válasz
WolfLenny
#1106
üzenetére
Lehet, hogy ilyenre gondolsz: [link]. Nem?
Szerk.: bár most már akkor kevésbé értem a feladatot. Először azt írtad: "Van két (vagy több) tábla ami azonos struktúrával rendelkezik." - és ezekből "egyesítve" (union) kellene lekérni adatot.
Akkor lehet, hogy a kettő kombinációja kellene. Összefűzni a fájlokat, majd union, de már kicsit összezavartál.
Igazából most nem vágom, az a sok különálló file egy-egy adatbázis dump file? Tehát nincsenek eleve felküldve az adatbázisba? Pontosíts plíz. -
Sk8erPeter
nagyúr
válasz
WolfLenny
#1093
üzenetére
Pont ilyen kérdést tettek fel Stack Overflow-n: [MySQL - Selecting data from multiple tables all with same structure but different data]
Ott javasolt megoldás:
(SELECT * from us_music where `genre` = 'punk')
UNION
(SELECT * from de_music where `genre` = 'punk')
Új hozzászólás Aktív témák
Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- Kedvenc zene a mai napra
- Graphics: Telefonvásárlási kálváriám....avagy clickbait cím: Horror a hardveraprón
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Konteó topic
- Újjászületés: szombattól új szerverkörnyezetben a PROHARDVER! lapcsalád
- sziku69: Szólánc.
- Projektor topic
- Kerékpárosok, bringások ide!
- További aktív témák...
- Kingston FURY Beast RGB 2x8GB DDR4 3200MHz CL16 Eladó!
- Kingston FURY Beast RGB 2x8GB DDR4 3200MHz CL16 - Gari 2033.10.21.- ig - Eladó!
- Újszerű SteelSeries Arctis 9X Wireless Bolti ár:60k INGYEN FOXPOST
- Nintendo Switch Pro kontroller - Monster Hunter Rise
- Nintendo Switch V1 - Diablo limited edition + joycon pár + joycon charging grip + 128GB microSD
- Samsung Galaxy Watch6 Classic 47mm LTE, Újszerű, 1 Év Garanciaval
- Apple iPhone Air Black 256GB használt karcmentes 100% akku (20 ciklus) garancia 2026.12.20.-ig
- Honor Magic 8 Lite 256GB Midnight Black Újszerű állapot 2029.02.11. garancia
- Powerbank Anker Prime, 20100mAh, 220W, QC + PD, Fekete A110BH11
- Apple iPad Air 5 13' 128GB (2029.02.09-ig Garancia) Csak kibontva volt, Aktiválatlan!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


