linux user group brescia

immagine del castello

Archivio della mailing list

[LugBS] domanda teorica su database

Andrea Gelmini andrea.gelmini a lugbs.linux.it
Gio 25 Nov 2010 11:20:30 UTC
Il 25 novembre 2010 10:47, ollenotna2000 <ollenotna2000 a yahoo.it> ha scritto:
> 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:

Sarebbe da vedere in dettaglio il tipo di dato e di accesso allo
stesso per valutare
come e se normalizzare.
Diciamo che molto dipende dall'engine che utilizzi come SQL.
Database come PostgreSQL, per esempio, offrono proprio il tipo di dato array,
che puoi usare alla stregua delle tuple, ma che puoi interrogare come i soliti
tipi SQL.

Non solo, non dimenticare che ogni motore ti impone dei limiti sulla dimensione
delle tabelle (in particolare sul numero di colonne).

Per la quantita' di celle vuote tipicamente non rappresentano un problema.
Sempre PostgreSQL definisce una bitmap in testa alla tupla, sicché i campi
vuoti semplicemente non occupano spazio fisico sul disco.
DB2 utilizza una sorta di compressione interna per limitare il problema.
Forse solo l'engine di default di MySQL alloca spazio fisico prefisso,
ma può essere che non sia più così, o che sfrutti gli hole del filesystem.

Ciao,
gelma

n.b.: se vuoi una mano magari ne parliamo la prima volta che ci vediamo




Maggiori informazioni sulla lista Lug