Quantità Query postato il 09/01/2010 11:51:12 nel forum programmazione, gdrcd, open source, hosting
Buongiorno a tutti
Vi propongo oggi una questione che mi sta facendo cercare in lungo e in largo per rete, senza alcun risultato: Il conteggio delle query.
Com'è ovvio che sia cerco costantemente di ottimizzare il numero delle query per pagina che il mio sitozzo deve effettuare, per evitare che ad ogni sessione i giocatori richiamino numeri spropositati di operazioni su DB, riuscendo a non superare quasi mai le 2-3 interrogazioni... tuttavia quello che mi domandavo è:
Se io creo delle sub-query o concatenazioni, a livello di conteggio mi vale 1 query o 2 query?
Io davvero non sono riuscita a trovare risposta a questa domanda da nessuna parte, non so se magari c'è un termine specifico di cui non sono a conoscenza... eventualmente se oltre a questa domanda avete un link con info generiche su questo argomento mi fareste un favore enorme.
(poi magari mi faccio problemi per nulla, non so XD)
Pagine → 1 2
09/01/2010 12:34:48 e modificato da tsumi il 09/01/2010 12:35:51
Allora:
da un rapido test su mysql il contatore delle query facendo una query annidata tipo (esempio idiota):
SELECT * FROM (SELECT * FORM tabella WHERE 1) AS tab WHERE id=1;
aumenta di 1 quindi mysql la conteggia come 1 query
Di fatto poi quelle sono due query ... quindi nei tuoi conteggi potresti considerarla come doppia.
Ad ogni modo se guardi l'ottimizzazione ti consiglio di non pensare tanto al numero delle query quanto al loro contenuto.
Una semplice select su un id numerico indicizzato ed una join su 3-4 tabelle con una mezza dozzina di condizioni in where contano entrambe come una query ma richiedono tempi molto diversi.
Tsu
09/01/2010 12:41:09
Uh grazie mille, non sapevo ci fosse un contatore query o_o a saperlo non impazzivo tutta la mattina XDD
Per l'ottimizzazione delle tabelle ed interrogazioni ho trovato info a sufficienza (che ovviamente sto seguendo) quindi su quel lato mi considero messa abbastanza bene
ti ringrazio davvero, ora ottimizzerò al massimo ù___ù
09/01/2010 13:27:14 e modificato da blancks il 09/01/2010 13:29:44
09/01/2010 14:20:28
09/01/2010 16:30:43
09/01/2010 16:59:28
innanzi tutto un LOL per la tua firma... ci rido da 10 minuti buoni...
inoltre... è un bene usare bene i Join e richiamare SOLO i campi che servono (quindi un SELECT * fallo solo se ti serve tutto!)
09/01/2010 17:14:59
09/01/2010 18:10:53
09/01/2010 19:34:52
Io personalmente costruisco una classe che mi fa da gestore del database.
Se un giorno cambia qualcosa o io cambio dbms mi basterà cambiare le funzioni di dialogo nella classe e non per tutto l'engine, da questo punto di vista sinceramente non mi vedo il problema sussistere, poi non so con che logica programmativa stai tirando su il tutto.
11/01/2010 18:59:39 e modificato da tdl - staff il 11/01/2010 19:01:27
Ma guarda che non è assolutamente come dici tu. Dipende da linguaggio DB a linguaggio DB usato l'inficiare del numero di query. Per assurdo mysql predilige una struttura a più query ma rapide piuttosto che una sola ma lunga.
EDIT:
il fatto è che devi tenere conto delle singole istruzioni quindi ad esempio una select è molto più veloce di una select join.
Discussione seguita da
Pagine → 1 2
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
Planethos GdR: Una nuova profezia
NosTale → Con l’aiuto della spada e della bacchetta magica risolverai abilmente intricate missioni e domerai coraggiosamente mostri selvaggi!
Metin2: Informazioni sul server migliorate
Age of Crystals: Rallentamenti estivi
dbzgdr ha risposto alla discussione: Dragon Ball Z Gdr
Titan Revenge: Calendario eventi fino a fine mese online!
World of Warship → MMO gratuito con frenetiche battaglie navali ambientate nel ventesimo secolo. Salpa con la tua nave ed affronta i nemici!
Enlisted: Modifiche al sistema di aggiornamento
pyro72 ha aperto un annuncio di ricerca: World Without Heroes ricerca Giocatore
Enlisted → Guida la tua squadra di soldati in combattimenti su larga scala, con fanteria, veicoli corazzati e aerei della IIa Guerra Mondiale!
World Without Heroes: News GDR: Pubblicazione e Nuovo Inizio
I dati del generatore di rank sono stati aggiornati!
Il gestore di Nexi Generation ha risposto alla recensione di deanna
War Thunder → Aviazione, veicoli corazzati e flotte militari della seconda guerra mondiale. Parteciperai a tutte le principali battaglie!
The Veil - Intervista al gestore Hello, friend - The Veil, play by chat urban fantasy!
Creare Avatar - Presentazione di 7 App gratuite sul Play Store per creare avatar manga o divertenti!
Giochi Storici - Lista completa dei giochi di ruolo online storici
Cosa sono i MUD? - Cosa sono i Multi User Dungeon? Scopriamolo con questo articolo!
Giochi Nuovi - Lista degli ultimi giochi online inseriti sul portale!
Guida Play by Forum - Guida al Play by Forum per chi arriva dai Play by Chat!