Pagina 3 di 4 PrimaPrima 1234 UltimaUltima
Risultati da 21 a 30 di 36
  1. #21
    Responsabile sistemista MeteoNetwork L'avatar di merto
    Data Registrazione
    03/03/05
    Località
    Lodi / Pedavena (BL)
    Età
    36
    Messaggi
    1,378
    Menzionato
    30 Post(s)

    Predefinito Re: [WeatherLink] Gestione dei dati su database MySQL/PHP

    Citazione Originariamente Scritto da Lioz Visualizza Messaggio
    grazie per le segnalazioni!

    ho quasi finito l'import massivo
    sono riuscito a spezzarlo in più parti attraverso un batch in modo che non vada in timeout l'esecuzione

    in pratica quello che voglio fare è fare eseguire in modo batch 10 volte la stessa funzione di lettura e inserimento del file ognuna delle quali prende legge solo un tot di bytes del file esportato da weatherlink

    ad esempio pensavo di leggere il file un mega alla volta
    non sono riuscito perà a capire come leggere un file solo in un intervallo di bytes

    hai qualche idea?
    Ma tutto ciò per evitare il sovraccarico?

    Comunque non fai un ciclo per ogni riga del file?
    Codice:
     while ( !feof ($handle) ) {
    Magari peschi solo tot righe dalla fine...

    Ora torno a casa, sul treno magari ci penso!

  2. #22
    Burrasca L'avatar di Lioz
    Data Registrazione
    15/06/02
    Località
    Seregno (MB)
    Età
    44
    Messaggi
    6,540
    Menzionato
    0 Post(s)

    Predefinito Re: [WeatherLink] Gestione dei dati su database MySQL/PHP

    Citazione Originariamente Scritto da merto Visualizza Messaggio
    Ma tutto ciò per evitare il sovraccarico?

    Comunque non fai un ciclo per ogni riga del file?
    Codice:
     while ( !feof ($handle) ) {
    Magari peschi solo tot righe dalla fine...

    Ora torno a casa, sul treno magari ci penso!

    si volevo evitare richieste troppo lunghe
    spezzando l'esecuzione in più funzioni non c'è bisogno di alzare l'execution time di php..
    Dati in diretta da Seregno

    SNOWCHASER (dalla nascita)


  3. #23
    Responsabile sistemista MeteoNetwork L'avatar di merto
    Data Registrazione
    03/03/05
    Località
    Lodi / Pedavena (BL)
    Età
    36
    Messaggi
    1,378
    Menzionato
    30 Post(s)

    Predefinito Re: [WeatherLink] Gestione dei dati su database MySQL/PHP

    Citazione Originariamente Scritto da Lioz Visualizza Messaggio
    si volevo evitare richieste troppo lunghe
    spezzando l'esecuzione in più funzioni non c'è bisogno di alzare l'execution time di php..
    Ma quanto ti ci mette ad elaborare? Perchè di solito mi fa un listato di 2 giorni con dati ogni 5 minuti e si parla di 3/4 secondi su un vecchio 700 mhz. Di solito l'execution time si aggira sui 60 secondi, o sbaglio?

  4. #24
    Burrasca L'avatar di Lioz
    Data Registrazione
    15/06/02
    Località
    Seregno (MB)
    Età
    44
    Messaggi
    6,540
    Menzionato
    0 Post(s)

    Predefinito Re: [WeatherLink] Gestione dei dati su database MySQL/PHP

    Citazione Originariamente Scritto da merto Visualizza Messaggio
    Ma quanto ti ci mette ad elaborare? Perchè di solito mi fa un listato di 2 giorni con dati ogni 5 minuti e si parla di 3/4 secondi su un vecchio 700 mhz. Di solito l'execution time si aggira sui 60 secondi, o sbaglio?

    be io ho provato con l'export di un anno intero, sono circa 5mb!
    infatti l'update dei dati che gira nel cron e legge il downld02.txt fila via veloce (dataupdate.inc)
    Dati in diretta da Seregno

    SNOWCHASER (dalla nascita)


  5. #25
    Burrasca L'avatar di Lioz
    Data Registrazione
    15/06/02
    Località
    Seregno (MB)
    Età
    44
    Messaggi
    6,540
    Menzionato
    0 Post(s)

    Predefinito Re: [WeatherLink] Gestione dei dati su database MySQL/PHP

    Ci sono riuscito!!!!

    allora: per prima cosa conesnto l'import solo in caso di tabella dati vuota
    in questo modo non devo fare una query aggiuntiva per controllare se esistono due timestamp uguali come nel caso dell'update dei dati dal dwonld02.txt

    a questo punto setto il ciclo per generare il batch passando come argomenti l'inizio e la fine della singola operazione (intesi come riga)

    Codice PHP:
                // 105120 righe per un txt annuale ogni 5 minuti 80 batch da 1314 record

                        
    $j=0;
                        
    $k=1314;
                
                for(
    $i=0;$i<80;$i++){
                

                        
                        
    $batch['operations'][] = array('meteo_admin_import_submit_import', array($fileabsurl,$station_id,$j,$k));
                        
                        
    $j=$j+$k;
                        
    $k=$k+1314;
                
                    } 
    a questo punto nel cilo di inserimento metto un if per controllare le righe

    Codice PHP:
     if($i>$start && $i<=$end) {
           
           
    //Escludo le prime 3 righe 
           
    if($i 3){
           
    // Le variabili della lista seguente devono rispecchiare i campi che compaiono nel file di testo
           
           
    list(
                   
    $date,
                   
    $time,
                   
    $temp,
                   
    $tempmax,
                   
    $tempmin 
    ecc ecc..

    adesso faccio altri test per evdere quanto ci mette
    Ultima modifica di Lioz; 18/06/2009 alle 23:10
    Dati in diretta da Seregno

    SNOWCHASER (dalla nascita)


  6. #26
    Burrasca L'avatar di Lioz
    Data Registrazione
    15/06/02
    Località
    Seregno (MB)
    Età
    44
    Messaggi
    6,540
    Menzionato
    0 Post(s)

    Predefinito Re: [WeatherLink] Gestione dei dati su database MySQL/PHP

    guarda tutto sembra funzionare
    il problema è che forse ho sbagliato l'export del txt annuale (es 2008.txt)
    non dovrebbe rispecchiare la forma del dwnld02.txt?
    cambia qualcosa nella struutura e quindi nella logica da aplicarci sopra per estrarre i dati?
    Dati in diretta da Seregno

    SNOWCHASER (dalla nascita)


  7. #27
    Burrasca L'avatar di Lioz
    Data Registrazione
    15/06/02
    Località
    Seregno (MB)
    Età
    44
    Messaggi
    6,540
    Menzionato
    0 Post(s)

    Predefinito Re: [WeatherLink] Gestione dei dati su database MySQL/PHP

    mmm continuava a fermarsi sempre nello stesso punto
    sono andato a controllare ed effettivamente nel mio file 2009.txt ho notatao che

    10/01/09 11.00 -0.4 -0.4 -0.5 84 -2.8 0.0 SSW 0.00 1.6 SSW -0.4 -0.6 -0.6 1029.2 0.25 0.0 0.065 0.000 22.0 27 2.1 20.2 113 1 99.1 5
    10/01/09 11.05 -0.3 -0.2 -0.4 83 -2.8 0.0 --- 0.00 0.0 --- -0.3 -0.4 -0.4 1029.2 0.00 0.0 0.065 0.000 21.9 27 2.1 20.1 115 1 100.0 5
    10/01/09 11.10 -0.2 -0.1 -0.2 83 -2.7 0.0 --- 0.00 0.0 --- -0.2 -0.3 -0.3 1029.2 0.00 0.0 0.064 0.000 21.9 27 2.0 20.0 117 1 100.0 5
    10/01/09 11.15 0.1 0.2 -0.1 82 -2.7 0.0 --- 0.00 0.0 --- 0.1 -0.1 -0.1 1029.1 0.25 1.0 0.063 0.000 21.9 27 2.0 20.0 117 1 100.0 5
    10/01/09 11.20 0.2 0.3 0.2 82 -2.5 0.0 SSW 0.00 1.6 SSW 0.2 0.1 0.1 1029.1 0.00 1.0 0.063 0.000 21.9 27 2.0 20.0 116 1 100.0 5
    10/01/09 11.25 0.4 0.5 0.3 81 -2.5 0.0 SSW 0.00 3.2 SSW 0.4 0.2 0.2 1029.1 0.00 1.0 0.062 0.000 21.9 27 2.0 20.0 114 1 100.0 5
    10/01/09 11.30 0.6 0.7 0.5 80 -2.4 0.0 SSW 0.00 3.2 SSW 0.6 0.4 0.4 1028.8 0.00 1.0 0.062 0.000 21.9 27 2.1 20.1 115 1 100.0 5
    10/01/09 11.35 0.7 0.8 0.7 80 -2.3 0.0 SSW 0.00 1.6 SSW 0.7 0.6 0.6 1028.8 0.25 1.0 0.061 0.000 22.0 27 2.1 20.2 116 1 100.0 5
    10/01/09 11.40 0.8 0.9 0.7 80 -2.2 1.6 SSW 0.13 3.2 SSW 0.8 0.6 0.6 1028.8 0.00 0.0 0.061 0.000 22.1 28 2.7 20.3 118 1 100.0 5
    c'è una discontinuità nella formattazione...mi chiedo se è normale e se bisogna specificare qaulche opzione particolare per l'esportazione
    Dati in diretta da Seregno

    SNOWCHASER (dalla nascita)


  8. #28
    Burrasca L'avatar di Lioz
    Data Registrazione
    15/06/02
    Località
    Seregno (MB)
    Età
    44
    Messaggi
    6,540
    Menzionato
    0 Post(s)

    Predefinito Re: [WeatherLink] Gestione dei dati su database MySQL/PHP

    cmq per chi volesse provare qui trova il modulo con il procedimento batch aggiornato

    http://www.signalkuppe.com/meteo.zip
    Dati in diretta da Seregno

    SNOWCHASER (dalla nascita)


  9. #29
    Burrasca L'avatar di Lioz
    Data Registrazione
    15/06/02
    Località
    Seregno (MB)
    Età
    44
    Messaggi
    6,540
    Menzionato
    0 Post(s)

    Predefinito Re: [WeatherLink] Gestione dei dati su database MySQL/PHP

    aggiornato il modulino con piccoli miglioramenti e l'introduzione di un blocco con le condizioni attuali per ogni stazione inserita

    http://www.signalkuppe.com/meteo.zip
    Dati in diretta da Seregno

    SNOWCHASER (dalla nascita)


  10. #30
    Burrasca L'avatar di Lioz
    Data Registrazione
    15/06/02
    Località
    Seregno (MB)
    Età
    44
    Messaggi
    6,540
    Menzionato
    0 Post(s)

    Predefinito Re: [WeatherLink] Gestione dei dati su database MySQL/PHP

    bingo!
    ora sembra andare anche l'import massivo

    http://www.signalkuppe.com/meteo.zip

    ho inserito la clausola IGNORE nella insert in modo da non inserire automaticamente dati con timestamp uguali, sia nell'update dei dati sia nell'import massivo

    in questo modo ho velocizzato notevolmente il batch

    dai che ci siamo..uno volta che abbiamo tutti i dati nel db è facile estrarre quello che si vuole
    Dati in diretta da Seregno

    SNOWCHASER (dalla nascita)


Segnalibri

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •