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

    Tabella con campo testuale pesante estratto poco frequentemente

    Ho un dubbio di base sull'ottimizzazione di database MySQL.
    Supponiamo di avere una tabella con 25mila record composti da vari campi di dimensioni contenute (numerici e varchar con pochi caratteri) e un campo Testo di tipo text che è invece molto esteso (un testo di un racconto ad esempio).

    E' molto frequente che questo dabatase venga interrogato per estrarre i campi diversi da Testo, mentre Testo è un campo che viene richiesto più raramente.

    In questo caso, è opportuno creare due tabelle (una con i soli campi usati di frequente e una con gli altri, tra cui Testo)? O il fatto di indicare nella SELECT i campi da estrarre (escludendo quindi spesso Testo) rende già ottimizzata la struttura?

  2. #2
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543

    Re: Tabella con campo testuale pesante estratto poco frequentemente

    Originariamente inviato da apusoft
    Ho un dubbio di base sull'ottimizzazione di database MySQL.
    Supponiamo di avere una tabella con 25mila record composti da vari campi di dimensioni contenute (numerici e varchar con pochi caratteri) e un campo Testo di tipo text che è invece molto esteso (un testo di un racconto ad esempio).

    E' molto frequente che questo dabatase venga interrogato per estrarre i campi diversi da Testo, mentre Testo è un campo che viene richiesto più raramente.

    In questo caso, è opportuno creare due tabelle (una con i soli campi usati di frequente e una con gli altri, tra cui Testo)? O il fatto di indicare nella SELECT i campi da estrarre (escludendo quindi spesso Testo) rende già ottimizzata la struttura?
    per quello che ho studiato io direi di sì....anche se tu lo richiamassi inutilmente in alcune query la struttura resterebbe ottimizzata, la tua query no.

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  3. #3
    grazie della risposta. ma cosa intendi con "struttura resterebbe ottimizzata, la tua query no" ?

  4. #4
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    Originariamente inviato da apusoft
    grazie della risposta. ma cosa intendi con "struttura resterebbe ottimizzata, la tua query no" ?
    che se lo richiamassi X volte per poi utilizzarlo solo Y volte, con X > Y la tua query sarebbe errata in (X-Y) casi
    intendo dire che il database è ottimizzato ma se tu per selezionare il campo "casa1" dalla tabella dove c'è il campo "testo_chilometrico" fai SELECT * FROM tabella e poi usi solo casa1, il database resta ottimizzato, la tua query no poichè fai compiere delle operazioni inutili al tuo DB...la query ottimizzata sarebbe SELECT casa1 FROM tabella

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  5. #5
    Beh certo, questo è ovvio; la query viene fatta specificando quali sono i campi che mi interessa estrarre volta per volta.
    Il mio dubbio riguardava invece solo il database: MySQL non perde tempo per escludere dalla query campi particolarmente "pesanti"?

  6. #6
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    Originariamente inviato da apusoft
    Beh certo, questo è ovvio; la query viene fatta specificando quali sono i campi che mi interessa estrarre volta per volta.
    Il mio dubbio riguardava invece solo il database: MySQL non perde tempo per escludere dalla query campi particolarmente "pesanti"?
    lui non li esclude...semplicemente li ignora...non ne legge il contenuto ma solo l'"intestazione"

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

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.