PDA

View Full Version : [MySQL, Excel] Creare un semplice database dinamico basato su tabelle Excel


D4N!3L3
22-06-2017, 08:35
Ciao a tutti, vi spiego rapidamente il problema.

A lavoro in 5 o 6 persone abbiamo a che fare con una mole di dati notevole, non enorme ma per dimensionare diciamo una tabella excel di 45000 righe x 50-60 colonne.

Il problema è che i dati vengono aggiornati da persone diverse su questa tabella e chi lavora sui dati spesso si trova a non averli aggiornati, inoltre la tabella è abbastanza pesante da gestire.

La soluzione a problemi di questo tipo è un database, per motivi aziendali al momento non è possibile strutturare una piattaforma come si deve e l'azienda non è un'azienda informatica.

Arriviamo alla questione.

Quello che vorrei fare è suddividere la tabella in tabelle più piccole che ovviamente condividano una o più chiavi in comune in modo che ognuno possa aggiornare i dati che gli competono.
Vorrei poi mettere questi file in una cartella condivisa su server alla quale accedono tutti.
Infine vorrei avere un applicativo open source che mi permetta di gestire questi dati in modo che:

Sia semplice da usare per tutti e tutti possano fare i join delle tabelle ed estrarre i dati che gli servono (una specie di pivot su excel per capirsi);
Abbia possibilmente un interfaccia visuale e che non richieda query in codice perché io saprei anche usarla ma non vale lo stesso per tutti;
I join fatti si aggiornino automaticamente ogni volta che qualcuno modifica una delle tabelle;
Creare dei report con i quali poi posso lavorare su Excel (calcoli e simili).


Ho visto che esiste PowerBI che forse fa qualcosa del genere ma la versione free è limitata a 30000 righe da quanto ho potuto constatare.

Ho pensato anche a MySQL ma non saprei bene come riuscire a interfacciarlo con i file excel e se devo ogni volta fare importa ed esporta perdo la praticità di un sistema del genere.
Vedo che ci sono guide di tutti i tipi ma non avendo troppo tempo da dedicarci a lavoro un aiuto più diretto mi farebbe comodo.

Mi rendo conto che quello che sto cercando di fare è un accrocchio mal riuscito ma per i problemi sopra esposti al momento non è possibile creare una struttura database come si deve e devo lavorare con quello che ho.

Tutti sanno grosso modo usare Excel e devo fare in modo che continuino a usarlo rendendo il tutto però più dinamico e funzionale.

Se qualcuno sapesse consigliarmi gliene sarei molto grato.

Nuke987
02-07-2017, 22:02
Ciao,

Per me Excel ha senso fintanto che i dati devono essere gestiti per periodi limitati di tempo. Nel tuo caso hai bisogno di lavorare continuamente su una base dati dinamica e devono poterlo fare anche altre persone. Penso che una qualsiasi soluzione ancora basata su Excel sia destinata solo a rimandare il problema.

La soluzione definitiva ed ideale è spostarsi su un database. Tutto quello che fai su Excel con tanta fatica (45k record sono oggettivamente tanti) potresti farlo tranquillamente da un'interfaccia web collegata ad un database MySQL. Per un server gestire 45k piuttosto che 450k di record è semplice. Senza considerare che mediante una sapiente gestione degli indici puoi applicare filtri molto più velocemente di Excel.

Per il discorso che il database deve essere popolato di nuovi record, non so come allo stato attuale inserite i dati. Se lo fate automaticamente potete automatizzare anche sul web la procedura. Se lo fate manualmente, fermo restando che tutto si può automatizzare, lo potete fare anche via web in modo sicuramente più rapido e agevole.

Infine tieni presente un grande vantaggio. Se devi inserire tanti dati, potresti lavorare su 2 tabelle. Una senza indici in modo che gli INSERT avvengano al massimo della velocità. L'altra con gli indici per farti applicare i filtri altrettanto velocemente. In questo modo puoi essere rapido sia nell'inserimento che nelle ricerche / modifiche. Ogni X minuti/ore/giorni con un task pianificato "travasi" i dati dalla tabella degli insert a quella operativa. In questo modo non devi nemmeno subire tu i tempi di attesa per la ricostruzione degli indici visto che se li sorbisce un agent.

In conclusione per me non è una vera soluzione rendere il tuo Excel uno spezzatino di file più piccoli come non lo è andare ad investire in software a pagamento. Costa meno mettere tutto online su un hosting da 30-300 euro l'anno oppure offline su un serverino / NAS in ufficio.