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

    file txt anzichè mysql???

    Ciao Raga.....

    mi è appena sorto un problema....

    devo ricavare i dati da un classico DB comuni....
    e creare un <select......></select> per la selezione.

    il problema è che trattandosi di tantissimi dati mi si rallenta spaventosamente il caricamento della pagine....


    come posso ovviare a questo problema???
    Se creo un file di testo è più veloce??? Oppure c'è un modo per far velocizzare il caricamento??
    Gestionale Strutture Ricettive...http://www.celexdesign.it

  2. #2
    A meno di non avere dell'hardware davvero obsoleto, probabilmente con un file di testo il tutto sarebbe ancora più lento.

  3. #3
    probabilmente con un file di testo il tutto sarebbe ancora più lento.
    Dissento!

    In moltissimi casi accedere ad un file locale è molto più veloce che accedere ad un rdb.

    Nel secondo caso c'è un tempo per inviare la richiesta al server rdb, un tempo per cercare e leggere i dati, un tempo per elaborarli, un tempo per restituire i dati alla applicazione.

    Usando il filesystem puoi eliminare i due tempi di comunicazione al db (primo ed ultimo).

    Chiaramente i file con i dati dovrenno venire strutturati adeguatamente, nel qual caso sono sicuro che otterrai prestazioni migliori con l'accesso al file anzichè al db.

    Nota bene però che parlo di leggere dati, non di cercarli.
    Quindi dovrai valutare il contesto.
    Tecnolgie per l'arte.
    Arti per la tecnologia.
    softhare

  4. #4
    Softhare non ha chiaramente tutti i torti, forse ho interpretato male io le parole
    tantissimi dati
    .

    Su centinaia di righe è sicuramente vantaggioso usare un file locale. Forse anche per qualche migliaio di righe. Oltre, usare un rdbms è sicuramente più performante, non solo nella ricerca, ma anche nella sola estrazione dei dati. Immaginati 100k righe di 20 colonne, e voler estrarre le prime tre colonne di dati più la 15esima. Credi davvero che un semplice file di testo possa avere prestazioni migliori rispetto ad un dbms? Conta peraltro che normalmente webserver e DBserver stanno sulla stessa macchina, quindi seppur sia vero che c'è della latenza dovuta all'instaurazione della connessione questa è di norma pochi ms. (0.7-1.2 ms su di una macchina davvero scarsa, ho appena testato con 'time').
    Ciau.

  5. #5
    Originariamente inviato da softhare
    Dissento!

    In moltissimi casi accedere ad un file locale è molto più veloce che accedere ad un rdb.

    Nel secondo caso c'è un tempo per inviare la richiesta al server rdb, un tempo per cercare e leggere i dati, un tempo per elaborarli, un tempo per restituire i dati alla applicazione.

    Usando il filesystem puoi eliminare i due tempi di comunicazione al db (primo ed ultimo).

    Chiaramente i file con i dati dovrenno venire strutturati adeguatamente, nel qual caso sono sicuro che otterrai prestazioni migliori con l'accesso al file anzichè al db.

    Nota bene però che parlo di leggere dati, non di cercarli.
    Quindi dovrai valutare il contesto.
    Non sono molto convinto della cosa, hai dei dati a proposito della comparazione di prestazioni?

    La connessione al db e' un'operazione singola e non scala con la dimensione dei dati, quindi e' totalmente trascurabile. Poi anche il database accede al filesystem locale, inoltre ha meccanismi di caching e ottimizzazione. L'unico caso in cui vedrei un vantaggio nell'accedere al filesystem e' se il database e' gia' sovraccarico e c'e' necessita' di suddividere il load.

  6. #6
    dati a proposito della comparazione di prestazioni?
    No, solo le mie esperienze dirette.

    Poi anche il database accede al filesystem locale
    Appunto. E'la sola cosa essenziale: accedere ai dati fisici.

    inoltre ha meccanismi di caching e ottimizzazione
    I meccanismi di caching o gli apt si basano appunto su file dove memorizzare i risultati delle query più comuni.
    Anche il filesystem ha meccanismi di caching.

    Su centinaia di righe è sicuramente vantaggioso usare un file locale. Forse anche per qualche migliaio di righe. Oltre, usare un rdbms è sicuramente più performante
    Appunto: dipende da quanti e quali dati, nonchè da cosa si vorrà fare di loro.

    nel caso di un popolamento di una select con una lista di options è meglio:

    $risultato=mysql_query("SELECT * FROM tabella");
    while($row=mysql_fetch_array($risultato)){
    echo '<OPTION VALUE="'.$row["cosa"].'">'.$row["cosa"];
    };

    oppure

    include("fileConListaDiTagOptionGiaCompilati.php") ;

    ricompilando il file se e quando ci sono modifiche alle opzioni disponibili?
    Tecnolgie per l'arte.
    Arti per la tecnologia.
    softhare

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.