salve a tutti, vi chiedo aiuto per un mio dubbio sull'efficienza di una query mysql su due differenti implementazioni delle tabelle nel db mysql.
opzione1)
creo una tabella UTENTE contenente gli attributi: nomeUtente, pass, info varie.
creo un unica tabella ACQUISTI contetnente gli attributi: nomeUtente(associato ad un determinato UTENTE), ed info varie.
con questa implementazione dovrei interrogare periodicamente(ogni x secondi) la tabella ACQUISTI e cercare le tuple in base al nomeUtente richiesto, quindi ignorando tutte le altre tuple che non hanno il nomeUtente richiesto nel momento.
opzione2)
creo una tabella UTENTE contenente gli attributi: nome utente, pass, info varie.
creo per ogni utente una tabella ACQUISTI_$nomeUtente contente solo gli attributi relativi agli acquisti.
con questa implementazione dovrei interrogare periodicamente solo la tabella ACQUISTI_$nomeUtente senza dover cercare in un unica tabella il nomeUtente associato nell'opzione1.
adesso la mia domanda è una: nel momento in cui nel mio db ho un gran numero di tuple nella tabella UTENTI e allo stesso tempo diverse tuple per gestire gli acquisti relativi all'utente, mi conviene usare l'implementazione dell'opzione1 o quella dell'opzione2(considerando che più utenti contemporaneamente dovranno effettuare query al db periodicamente)?
oppure magari se c'è un'implementazione più efficente che non conosco, accetto consigli.
spero di essere stato abbastanza chiaro. grazie in anticipo
opzione1)
creo una tabella UTENTE contenente gli attributi: nomeUtente, pass, info varie.
creo un unica tabella ACQUISTI contetnente gli attributi: nomeUtente(associato ad un determinato UTENTE), ed info varie.
con questa implementazione dovrei interrogare periodicamente(ogni x secondi) la tabella ACQUISTI e cercare le tuple in base al nomeUtente richiesto, quindi ignorando tutte le altre tuple che non hanno il nomeUtente richiesto nel momento.
opzione2)
creo una tabella UTENTE contenente gli attributi: nome utente, pass, info varie.
creo per ogni utente una tabella ACQUISTI_$nomeUtente contente solo gli attributi relativi agli acquisti.
con questa implementazione dovrei interrogare periodicamente solo la tabella ACQUISTI_$nomeUtente senza dover cercare in un unica tabella il nomeUtente associato nell'opzione1.
adesso la mia domanda è una: nel momento in cui nel mio db ho un gran numero di tuple nella tabella UTENTI e allo stesso tempo diverse tuple per gestire gli acquisti relativi all'utente, mi conviene usare l'implementazione dell'opzione1 o quella dell'opzione2(considerando che più utenti contemporaneamente dovranno effettuare query al db periodicamente)?
oppure magari se c'è un'implementazione più efficente che non conosco, accetto consigli.
spero di essere stato abbastanza chiaro. grazie in anticipo