drop table Orders, Salesmen, T456a;
| Questa riga causa la rimozione dalla memoria di tre tabelle. |
Tab1:
Load * Inline [
Customer, Items, UnitPrice
Bob, 5, 1.50
];
Tab2:
LOAD Customer, Sum( Items * UnitPrice ) as Sales
resident Tab1
group by Customer;
drop table Tab1;
| Una volta creata la tabella Tab2, la tabella Tab1 viene rimossa. |
// Load mapping table of country codes:
map1:
mapping LOAD *
Inline [
CCode, Country
Sw, Sweden
Dk, Denmark
No, Norway
] ;
// Load list of salesmen, mapping country code to country
// If the country code is not in the mapping table, put Rest of the world
Salespersons:
LOAD *,
ApplyMap('map1', CCode,'Rest of the world') As Country
Inline [
CCode, Salesperson
Sw, John
Sw, Mary
Sw, Per
Dk, Preben
Dk, Olle
No, Ole
Sf, Risttu] ;
// We don't need the CCode anymore
Drop Field 'CCode';
Drop Mapping Table map1;
Metrics:
Load * Inline [
Transaction ID, Sales Amount, Sales Cost, City, Customer ID
1000012, 4509.33, 1234.22, Oslo, 250v9849
1000013, 1043.21, 180.23, Gothenburg, 195d5930
1000014, 6038.35, 1400.10, Copenhagen, 195d5930
];
| Questo esempio mostra come può essere utilizzata la variante Drop mapping table. Viene creata una tabella di mapping map1 e quindi utilizzata in un'istruzione LOAD successiva con la funzione ApplyMap. Dopo che la tabella di mapping è stata utilizzata, viene eliminata dalla memoria, ottimizzando l'utilizzo della RAM per i dati da caricare nelle tabelle successive dell'esecuzione dello script. In questo caso, con solo poche righe nella tabella di mapping, l'ottimizzazione della RAM sarebbe minima. Tuttavia, per tabelle di mapping di grandi dimensioni o quando si creano tabelle di mapping all'interno di cicli, le prestazioni possono essere notevolmente migliorate. |