Nell'esempio dei dati che hai postato ved UN SACCO di numeri, UN SACCO di zeri.
Direi che c'e' abbondante spazio per fare delle ottimizzazioni e ridurre DRASTICAMENTE la quantita di spazio allocato.
Non hai ancora indicato come sono fatte le tabelle e che cosa contengono le colonne. NON SERVE che indichi esplicitamente il nome della colonna, puo isemplicemente dire:
nella tabella 1, colonna 1, metto i primi 5 caratteri del record di tipo 1,
…
Ma a parte questo direi che ci sono almeno TRE modi per risparmiare un bel po' di spazio:
- se una stringa puo' essere convertita in un numero interno, salvare in Access il valore intero e NON la stringa
- se la stringa e' composta dalla ripetizione di un particolare carattere (ad esempio lo 0), sostituire la sequenza dei caratteri ripetuti con una sua rappresentazione ‘compatta’.
- se ci sono particolari stringhe che si ripetono MOLTISSIME VOLTE, invece di DUPLICARLE, metterle in una tabella SEPARATA (con relativo indice) e referenziare tale tabelle nelle altre tabelle.
.
Per quanto riguarda 1, la stringa
03000065822023022023020
ruslta presente 40 (QUARANTA) volte. Se la metti in una tabella separata, ne tieni un'UNICA copia e al suo posto metti un indice numerico composto da 4 byte. Quindi converti una string di 24 caratteri/byte in una di 4, riducendo lo spazio DEL 83%
Per quanto riguarda 2, ad esempio, invece di
00350100000000000000000000000000000000000000
potresti scrivere
003501Z38
(ci sono 38 zeri finali). Gia' cosi' hai ridotto una stringa da 45 caratteri a 10. Trucchetto che ti permette di ridurre lo spazio allocato DEL 75%.
https://it.wikipedia.org/wiki/Run-length_encoding
…
come vedi, senza saper ne leggere ne scrivere, sono state identificate delle strategie per ridurre di ALMENO il 50% lo spazio allocato!
Pa robabilmente si puo' fare di MOOOOLTO meglio.
…
Per QUALUNQUE algoritmo/implementazione software c'e' SEMPRE un bilanciamento tra SPAZIO e TEMPO:
Per RIDURRE il tempo, bisogna usare PIU' SPAZIO: classico esempio sono le cache usate nei siti web per evitare di rigenerare piu' volte la stessa pagina
per RIDURRE lo spazio, bisogna fare piu' calcoli quindi usare PIU' TEMPO: come in questo caso, perche' per ridurre lo spazio allocato devi mettere in piedi un meccanismo di compressione/decompressione delle stringhe.