|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: May 2007
Città: Bari
Messaggi: 15
|
[Database] Progettazione
Devo realizzare un database che raccolga i dati da circa 20 sensori (potranno variare anche fino a 50).
Frequenza di aggiornamento un valore ogni 10 minuti. Ho pensato di realizzare un unica tabella di questo tipo ID_SENSORE TIMESTAMP VALORE la chiave è composta da i primi due campi. Dato che il SW dovrebbe funzionare 24h/24h è evidente che la mole dei dati è grande, quindi credo che diventi inefficiente poi fare delle query e delle analisi statistiche. Quale può essere una soluzione? Creare una tabella al giorno? o una alla settimana tipo? Aspetto suggrimenti, grazie. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2006
Messaggi: 22462
|
la cosa migliore sarebbe in realtà(secondo me) creare una tabella che come campi abbia il valore di ogni sensore così:
ora |giorno|val s1|vals2|...|valsn a questo punto avrai al più 240 record al giorno
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza |
|
|
|
|
|
#3 |
|
Junior Member
Iscritto dal: May 2007
Città: Bari
Messaggi: 15
|
Ci avevo pensato, ma se cambia il numero di sensori dovrei cambiare la struttura della tabella.
In realtà aggiungere tabelle significa cambiare struttura, ma almeno le tabelle sono tutte uguali come struttura. Tra l'altro i valori dei sensori non mi arrivano sincronizzati, quindi non potrei scrivere un record con tutti i valori ed un unico time stamp. Ultima modifica di CartaIgienica : 20-03-2008 alle 12:02. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Il modo migliore è quello che ha scritto CartaIgienica, visto che il numero di sensori varia.
Assolutamente non sono tanti. Sono 7200 record al giorno. Per un database sono bazzecole. Magari ogni volta che dovrai fare le statistiche potresti elaborare i dati e spostarli già sotto forma di statistica in tabelle adeguate. In questo modo, se non ti servono le singole rilevazioni, ti salvi sole le statistiche. |
|
|
|
|
|
#5 |
|
Junior Member
Iscritto dal: May 2007
Città: Bari
Messaggi: 15
|
Supponendo invece che le frequenze di aggiornamento siano molto superiori, ad esempio che i sensori mi diano 10 valori al secondo? Rimarrebbe la soluzione migliore o a quel punto mi converrebbe creare una tabella al giorno se non una all'ora?
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Rimango sempre per l'aggregazione successiva: quando andrai a leggere quei dati li rimuoverai dalla tabella e li sposterai in una tabella con tutte le statistiche.
Un milione di record se li gestisce bene il database, la difficoltà è tutta nel programma che li recupera |
|
|
|
|
|
#7 |
|
Junior Member
Iscritto dal: May 2007
Città: Bari
Messaggi: 15
|
Ok grazie del consiglio, dato che farò io anche quel programma non potrò scaricare la difficoltà
Ma ci penserò in un secondo momento :P |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Ovviamente per database intendo un dbms server serio, non Access
|
|
|
|
|
|
#9 |
|
Junior Member
Iscritto dal: May 2007
Città: Bari
Messaggi: 15
|
Ho deciso di utilizzare PostGreSQL credo che sia serio, oltre che gratuito.
|
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:35.




















