Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Sveltire il database - un consiglio

    Ragazzi non sono molto pratico di indici ai database.. volevo chiedervi una cosa..

    Ho un database di circa 60000 righe... Mi capita di effettuare delle query select ordinando le righe per NOME (ORDER BY NOME ASC)

    Se applico un INDEX alla colonna NOME sveltisco le query?

    Ho sempre saputo che l'INDEX sveltisce solo se si usa la clausola WHERE nelle SELECT... Sveltisce anche se si usa ORDER BY senza usare WHERE?

    grazie 1000

  2. #2

    Re: Sveltire il database - un consiglio

    Sì. Comunque bastava fare le due queries, con e senza indice: quella senza indice sarà più lenta.

    Originariamente inviato da messaggiamo.com
    Ho sempre saputo che l'INDEX sveltisce solo se si usa la clausola WHERE nelle SELECT...
    No. Un indice viene usato ovunque porti giovamento, anche da GROUP BY se possibile.

  3. #3
    si avevo fatto qualche prova e anche io pensavo cheportasse qualche giovamento..ma ho testato su phpmyadmin e i tempi con e senza index sono praticamente uguali.. ad ogni modo grazie terrò sicuramente gli indici..

    qualche altro consiglio per sveltire il database?

  4. #4
    Originariamente inviato da messaggiamo.com
    si avevo fatto qualche prova e anche io pensavo cheportasse qualche giovamento..ma ho testato su phpmyadmin e i tempi con e senza index sono praticamente uguali.. ad ogni modo grazie terrò sicuramente gli indici..

    qualche altro consiglio per sveltire il database?
    Se i tempi sono uguali vuol dire che c'è un qualche inghippo perché l'indice non viene usato: i tempi non possono essere uguali. Esegui la sequente query 4 o 5 volte con e senza indice (c'è il pulsante per ripetere la query in PhpMyAdmin):

    codice:
    SELECT * FROM TABELLA ORDER BY NOME LIMIT 10
    e dammi i tempi delle ultime due volte. Io l'ho fatto su una tabella di 4541 righe e ho 0,0003 secondi con indice e 0,0037 secondi senza indice: una differenza di circa 10 volte. Presumo che su 60.000 righe la differenza sia ancora più marcata!

  5. #5
    ehm chiedo umilmente perdono

    effettivamente l'index ha sveltito la query.. non pubblico i tempi per umiliazione personale

    no scherzo, ecco i tempi dei 4 tentativi senza e con index:

    NON INDEX ---- INDEX
    ---------------------------------
    13.85 ---- 0.1441
    3.14 ---- 0.0083
    0.0068 ---- 0.0079
    3.047 ---- 0.0069

    avevo già fatto delle prove ma le avevo fatte in locale su un altro database ben più leggero; per questo i tempi mi venivano quasi uguali. Qui la differenza è notevole.

    i tempi senza index scalano magari per qualche sistema di cache boh gli altri invece sn abbastanza stabili.

    grazie mille... ti posso chiedere di aggiungermi su msn? il mio contatto lo trovi nel mio profilo.. mi sevrirebbe una consulenza privata su un aspetto, anche a pagamento, per migliorare il mio sito.. se ti va aggiungimi pure, io sono marco...

    ciao grazie ancora

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.