linux user group brescia

immagine del castello

Archivio della mailing list

[LugBS] [Bulk] Re: domanda teorica su database

ollenotna2000 ollenotna2000 a yahoo.it
Gio 25 Nov 2010 12:26:56 UTC
Il 25/11/2010 11:03, diego ha scritto:
> secondo me dovresti fare una chiave composta dai 3 parametri A, B e C, e
> il valore N
>
> tabella:
>
> +---+---+---+-------------+
> | A | B | C |    n        |
> +---+---+---+-------------+
> |   |   |   |             |
>
> in realtà, visto che dici che non tutti i valori sono valorizzati,
> significa che avrai dei record in meno. Alla fine avrai un record per
> ogni valore esistente nel tuo array tridimensionale
>
>
> Il giorno gio, 25/11/2010 alle 10.47 +0100, ollenotna2000 ha scritto:
>> Sto progettando un database che vorrei costruire in ambiente LAMP.
>> In sostanza i dati sono concettualizzabili in un array a 3 livelli:
>> A (diciamo 2000 unità), B (20), C (10).
>> Questo significa che i singoli dati sarebbero 2000x20x10= 400000.
>>
>> In termini di prestazioni cosa pensate sarebbe meglio:
>>
>> massima granularità con records fatti così:
>> chiave A+B+C
>> dato singolo n
>> totale 400000 records.
>>
>> records con serie di dati:
>> chiave A+C
>> dati  b1,b2,b3....,b20
>> totale 2000 records.
>>
>> Penso a questo perchè non è detto che tutte le singole celle siano
>> valorizzate, quindi (penso, ma sono farlocco) la gestione via raccolta
>> record sia più economica rispetto al controllo celle vuote di un array.
>> In realtà le dimensioni date sono massime, un database reale potrebbe
>> ridursi a 1000x10x10.
>>
>> Antonello
>>
>
>
In effetti anche io in teoria sarei propenso per la massima granularità 
del database, cioè 1 dato significativo n per ogni record

+---------------------------+------+
+  chiave                   + dati +
+---------------------------+------+
+    A   +   B   +   C      +  n   +
+---------------------------+------+

piuttosto che

+----------------+---------------------------+
+  chiave        +      dati                 +
+----------------+---------------------------+
+    A   +   B   +  Cn1, Cn2, Cn3.... Cn10   +
+----------------+---------------------------+

il che vuol dire record-in-meno piuttosto che alcuni-dati-nulli.

La questione sono:
- possibilità di gestire il numero di record con prestazioni accettabili 
da Mysql (in questo caso si potrebbe arrivare sui 200000)

- possibilita di una programmazione php più semlice.

(il tutto vorrei farlo con php-mysql)

Tutti i dati sono numerici: anche le chiavi possono essere numeriche, 
collegate a tabelle semplici con chiave+testodescrizione.





Maggiori informazioni sulla lista Lug