Come ridurre al minimo la dimensione di una tabella intera in formato numerico?Le tabelle da salvare sono tutti numeri interi.
Grazie!
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << delete columns( 1 :: 3 );
New Column( "A" );
Column( "A" ) << Formula( 1000 + Row() );
dt << run formulas;
Column( "A" ) << deleteFormula;
SceneggiaturaRe: Come ridurre al minimo la dimensione di una tabella intera in formato numerico?Ridurre al minimo in memoria o su disco?
In memoria: utilizzare un formato numerico breve, numerico(1), numerico(2) o numerico(4).Questi specificano un numero intero con segno dello stesso numero di byte con alcuni valori riservati per la mancanza. Sono tutti più piccoli di un double (8 byte) che può rappresentare numeri interi fino a ~50 bit... un intervallo molto più ampio dell'intervallo 8/16/32 bit. Risparmia anche spazio su disco. (Non credo sia necessario, ma un recente commento nella community ha affermato che la preferenza per i numeri brevi deve essere attiva per usarli. Dopo aver attivato la preferenza, guarda i tipi numerici disponibili durante la creazione di colonne e guarda il JSL che viene salvato. Gli intervalli sono circa +/-126, +/-32000, +/-2e9.)
Su disco: usa la compressione. Due approcci, utilizzare il triangolo rosso per eseguire una compressione simile a zip di tutte le colonne o utilizzare l'utilità compress-columns che cerca di vedere se la colonna ha un numero limitato di valori che potrebbero essere rappresentati come una ricerca. L'approccio zip è lento durante il salvataggio, più veloce durante la decompressione, ma non veloce come il caricamento dei dati non compressi.
È possibile utilizzare un numero (1 o 2 o 4) e zip il file con buoni risultati se c'è ancora una certa ridondanza nei dati che zip può spremere. Ma è decompresso nella memoria, quindi non aiuta lì.
Re: Come ridurre al minimo la dimensione di una tabella intera in formato numerico?Grazie Craig!
Ho bisogno di ridurre la dimensione del file memorizzato sul disco rigido. Ma non so come farlo con JSL.
Re: Come ridurre al minimo la dimensione di una tabella intera in formato numerico?Ho creato un file con la GUI, impostato la colonna su numeric(1) e ho usato il triangolo rosso per richiedere la compressione su disco. Poi ho preso la sceneggiatura.
New Table( "Untitled",
Add Rows( 0 ),
Compress File When Saved( 1 ),
New Column( "Column 1", Numeric( 1 ), "Continuous", Set Selected )
)