Crearea tabelelor bazei de date în ea și face apel la conținut - un lucru foarte simplu, deci este foarte mult pentru a învăța elementele de bază încetează pur și simplu să se îngropa în studiul de lucru sintaxă cu baza de date, dar în zadar, doar una înregistrările de indexare în baza de date poate ridica performanta site-ului de zece ori, în special în cazul în care acesta este un portal mare.
Ce este - indexarea? Să ne ocupăm
Cred că e nevoie să explice de ce toate acestea se face, și de ce bibliotecari urmăriți pentru gelozie ordinea de plasare a cărților de pe rafturi. Dar eu vă atrag atenția asupra eficienței relative a căutării într-un sistem structurat, care, întâmplător, este de obicei neglijată în construcția și utilizarea bazelor de date computerizate.
Imaginați-vă că vă aflați într-o bibliotecă în căutarea pentru o carte, „Cum să crească flori în zonele uscate.“
Dacă începe să treacă prin toate cărțile din bibliotecă, atunci aveți va dura mai mult de o zi sau chiar o lună dacă este o bibliotecă mare.
Deci, de ce ne calculatoarele noastre pentru a căuta informații avem nevoie de adânc-busting? Doar pentru că o fac repede?
Da, repede. Dar, dacă este necesar să se facă o căutare în mii de înregistrări. Și dacă vorbim despre milioane de oameni? Sau crezi că baza de date nu este atât de mare de a face cu procesul de optimizare? Te înșeli, draga mea. De îndată ce baza ta de a transforma sute de oameni, astfel încât la mii de înregistrări rândul său, imediat la motorul bazei de date în milioane! Și furnizorul dvs. de găzduire este destul de rezonabil pentru a face punctul.
Deci, în această bază de date pentru a indexa orice îndoiască orice programator sănătos. Indicii construite în mod corespunzător ne permit să găsim rapid informațiile corecte.
Cum se întâmplă acest lucru punct de vedere tehnic - nu știm neapărat. Este suficient să se aibă în vedere faptul că MySQL, precum și orice alt motor de baze de date utilizează spațiul suplimentar pe disc pentru a stoca fișierele index. Este necesar să se cunoască, pur și simplu nu pentru a produce indexurile inutile. Toți trebuie să știe când să se oprească. Chiar și în acest caz, util ca tabele de indexare.
Așa că hai să definim și că trebuie să fie indexate. indicele ar trebui să fie câmpurile din tabel, pe care există o căutare de date sau de sortare.
Prin construirea unui index pe BOOK_NAME teren, calculatorul nostru va găsi primele litere ale necesare lucrări de aproape instantaneu, deoarece nu mai este necesar să se rezolve întreaga masă, ci doar uita-te la acea parte în cazul în care înregistrările sunt stocate în litera dorită.
Chiar mai mult, pur și simplu, dacă suntem în căutarea pentru o carte cu litera „K“, calculatorul nu va rezolva intrările care încep cu alte litere, știind foarte bine că nu există înregistrări care satisfac interogarea. Și dacă în cartea noastră bază de date conține 100.000 de cărți, dintre care doar 30 cu litera F, on-demand „pentru a găsi toate cărțile de pe litera F“, calculatorul enumără doar 30 de intrări în prezența indicelui, sau enumără 100.000 de înregistrări în absența acestuia. În opinia mea, beneficiul este evident.
modifica tabel tbl_book adăuga index i_date (book_date);
Această directivă specifică book_date MySQL a crea un index pe teren.
Crearea indicelui câmp text este complicat doar prin faptul că este necesar să se precizeze numărul de caractere de la începutul înregistrării, care este necesar pentru a construi un index. Aici deja să se evalueze dimensiunea de bază, similitudinea dintre primele caractere ale diferitelor înregistrări și așa mai departe.
De exemplu, dacă vom construi un index al numelor străzilor, atunci nu avem nevoie să le indice pe întreaga lungime, și se poate presupune că marea majoritate a intrărilor vor diferi deja undeva în a cincea literă, dar dacă codurile index de rulmenți cu bile, indicele mai bine ca pot fi mai multe caractere, pentru un număr mare de produse pot transporta coduri care diferă numai în ultima literă sau o cifră.
si MySQL va afișa toate informațiile de pe tbl_name de masă, inclusiv nivelul de câmpuri de indexare, sau mai în detaliu, numai despre indici:
arată indicele de tbl_name;
Rămâne de notat că o multitudine de domenii pot participa la index. Nu este neapărat una. Dacă aeriene bază de date este cel mai des căutate de cantitate anumit interval de date, atunci este logic să se creeze un index pe aceste două domenii: suma și data. Aceasta este, de a crea un index unic pe două domenii în loc de doi indici pentru fiecare domeniu!
modifica tabel tbl_name adăuga index i_name (field1, field2);
Caută indicii unice este un pic mai repede, astfel încât în cazul în care valoarea câmpului trebuie să fie întotdeauna unic - nu prea leneș să-l menționeze în tabelul de proiectare. MySQL vă va mulțumi viteza răspunsurilor lor la întrebările dumneavoastră. Înainte de a spune la revedere, aș dori să vă spun un MySQL îndrumar util. explica aceasta se numește. Dacă ați pus cuvântul în fața oricărei interogare a bazei de date, MySQL nu va afișa rezultatele de interogare și afișează informații detaliate despre mijloacele prin care a trebuit să folosim, și cât de multe operațiuni au trebuit să facă, în scopul de a obține un răspuns la cererea dumneavoastră. Acesta este cuvântul magic explica va evalua eficacitatea oricărei cereri și ajustarea tuturor indicilor de bază.
Evaluează acest articol: