Hogy is ne legyen mysql lekérdezés - Web fejlesztés - blog hasznos cikkek fejlesztésére és

Hogy is ne legyen mysql lekérdezés - Web fejlesztés - blog hasznos cikkek fejlesztésére és

Amikor optimalizálja projektek, szinte minden kérést újra kell rajzolni. Vizsgálja a legszűkebb helyeken és a legtöbb nagy kérdések és foglalkozott apróságok. Tekintsük az összes lehetséges változat újraépítési kérelmek annak érdekében, hogy a legjobb teljesítményt a legalacsonyabb költség és idő erőforrásokat.

Az egyetlen „rossz” a MySQL lekérdezés

Ebben a lekérdezésben kiválasztja az összes adatátviteli vonalakon 100 óriás asztal- miért? 99%, amire szükség van, hogy csak az oszlopok, de a „ügyes” programozók írni ezen a módon. Amellett, hogy minden - ez a táblázat is lesz rendezve - miért? Igen, mert kifejezetten: ORDER BY NULL.
Képzeljük el, mi történik a 100. El tudja képzelni, milyen mennyiségű felesleges információkat szerver meghajtók „elvesztegetett” a táblázatban 42 oszlop, akik közül 20 `text` és egyidejű hozzáférést az asztalra csúcsterhelésnek?

Hogy ez a kérés nem? Igen, általában, akkor minden rendben van, ha használni MyISAM táblák. Az a tény, hogy a táblák az ilyen típusú boltban száma tárolt közvetlenül a táblázatban, ezért az eredményt érünk azonnal.
Egy teljesen más helyzet InnoDB táblákat. Ott, attól függően, hogy a szerver terhelését, és a mérete az asztal, a lekérdezés lehet tenni, nagyon, nagyon hosszú idő. For InnoDB:

Meg kell érteni, hogy minden típusú tárolási előnyöket, és próbálja elérni a jobb teljesítményt az ilyen típusú változás legalább naiv. Valami igazán gyorsabban dolgozik, mint az egyidejű módosítása asztal InnoDB ellen ugyanaz MyISAM. és valami nem megy lassabban. Ha úgy döntött, hogy változtatni a formátumot az adatok tárolása, meg kell, hogy gondosan vizsgálja meg az összes kérés adatbázis és zatyunit azok a közelgő változást. Elég talán meg kell változtatni az egész szolgáltatási architektúra.