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

    Tabella visite scheda aziende portale che diventa troppo grande, come fare ?

    Ciao a tutti ...
    Vi spiego il "problema" che non ho idea di come risolvere:

    - ho un sito nel quale, tra le altre cose, sono contenute varie schede aziende
    - registro in una tabella del database tutti gli indirizzi ip e la data degli utenti che visitano queste pagine (tenendone così traccia)

    Successivamente tiro fuori, tramite query, le visite "univoche" ricevute da ogni scheda azienda tramite una query che va a prendere tramite il "distinct" gli ip in base alla data, ecco:

    SELECT DISTINCT ip, date FROM tabella_visite WHERE date<='$date' && id='$id' .....

    Fin qui tutto bene.

    Qual è il problema ?

    Il problema è che dopo 1 anno questa tabella, considerando un sito che fa diverse migliaia di visite mensili, diventa GIGANTESCA e PESANTISSIMA (si parla di GB). Questo perchè, come potete ben immaginare, vengono registrate righe e righe nella tabella di ogni visita ricevuta per poi pescare solo quelle univoche.

    Come potrei evitare che questa tabella diventi così pesante ? oppure, cosa potrei fare, magari dopo ogni tot tempo, per sistemare o snellire questa tabella ?

    Qualche idea o soluzione che già adotta qualcun altro ?

  2. #2
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Visto che prendi solo gli IP univoci, perchè non fai questo a monte?

    Prima di inserire l'ip nella tabella controlla prima che per quella data non ci sia già un entry.
    Nel caso sia la prima volta inserisci il record, altrimenti no (oppure potresti mettere un contatore per quel ip che incrementi ad ogni visita)

  3. #3
    ah ok, grazie ...
    in sostanza dovrei inserire una sola volta quell'ip (al giorno), se dovesse visitarla due o più volte la pagina non lo inserisco, giusto ?

    Cioè, inserisco il primo record per quel ip univoco e se poi durante quel giorno torna a visitare la pagina non lo inserisco più fino all'inizio del giorno successivo ... e così via ...

    Giusto ?

    Così sicuramente è meglio, ok (ottimo suggerimento), però la tabella diventerebbe lo stesso molto grande dopo 1 anno (anche se più lentamente rispetto a prima) ...

    DOMANDE:

    1) Ma pensare a qualcosa che tipo dopo un tot tempo (non so, 1 mese o 1 anno) salvi i risultati delle visite ricevute e le inserisce in una sorta di nuovo contenitore/tabella, permettendo di svuotare (o tenere leggera) questa tabella e ripartire da un dato pre-registrato ?
    2) Come fanno i grandi progetti web in questo caso ? come registrano le visite univoche alle pagine o ad esempio le visite o i click sui banner ?

    Grazie dei consigli.

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.