Vue d'ensemble
Dans ce scénario de cas d'usage, vous avez :
Un ensemble de données de transactions avec :
Une table de devises avec :
Un deuxième ensemble de données de transactions avec :
Vous allez charger cinq scripts dans l'ordre séquentiel.
Le premier script de chargement contient un ensemble de données initial avec des dates et des montants en GBP, envoyé à une table appelée Transactions.
Le deuxième script contient les éléments suivants :
Un deuxième ensemble de données avec des dates et des montants en USD, envoyé à une table appelée Transactions_in_USD.
Le préfixe noconcatenate, placé avant l'instruction LOAD de l'ensemble de données Transactions_in_USD, pour empêcher la concaténation implicite.
Le troisième script de chargement contient le préfixe join, utilisé pour créer un taux de change de devises entre les devises GBP et USD dans la table Transactions_in_USD.
Le quatrième script de chargement contient le préfixe concatenate, qui ajoutera la valeur Transactions_in_USD à la table Transactions initiale.
Le cinquième script de chargement contient l'instruction drop table, qui supprimera la table Transactions_in_USD dont les données ont été concaténées à la table Transactions.
Premier script de chargement
Transactions:
Load * Inline [
id, date, amount
1, 12/30/2018, 23.56
2, 12/07/2018, 556.31
3, 12/16/2018, 5.75
4, 12/22/2018, 125.00
5, 12/22/2018, 484.21
6, 12/22/2018, 59.18
7, 12/23/2018, 177.42
];
Résultats
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :
Résultats du premier script de chargementid | date | amount |
---|
1 | 12/30/2018 | 23.56 |
2 | 12/07/2018 | 556.31 |
3 | 12/16/2018 | 5.75 |
4 | 12/22/2018 | 125.00 |
5 | 12/22/2018 | 484.21 |
6 | 12/22/2018 | 59.18 |
7 | 12/23/2018 | 177.42 |
Le tableau montre l'ensemble de données initial avec les montants en GDP.
Deuxième script de chargement
Transactions_in_USD:
NoConcatenate
Load * Inline [
id, date, amount
8, 01/01/2019, 164.27
9, 01/03/2019, 384.00
10, 01/06/2019, 25.82
11, 01/09/2019, 312.00
12, 01/15/2019, 4.56
13, 01/16/2019, 90.24
14, 01/18/2019, 19.32
];
Résultats
Chargez les données et accédez à la table.
Résultats du deuxième script de chargementid | date | amount |
---|
1 | 12/30/2018 | 23.56 |
2 | 12/07/2018 | 556.31 |
3 | 12/16/2018 | 5.75 |
4 | 12/22/2018 | 125.00 |
5 | 12/22/2018 | 484.21 |
6 | 12/22/2018 | 59.18 |
7 | 12/23/2018 | 177.42 |
8 | 01/01/2019 | 164.27 |
9 | 01/03/2019 | 384.00 |
10 | 01/06/2019 | 25.82 |
11 | 01/09/2019 | 312.00 |
12 | 01/15/2019 | 4.56 |
13 | 01/16/2019 | 90.24 |
14 | 01/18/2019 | 19.32 |
Vous verrez que le deuxième ensemble de données de la table Transactions_in_USD a été ajouté.
Troisième script de chargement
Ce script de chargement joint un taux de change de devises de la devise USD en devise GDP dans la table Transactions_in_USD.
Join (Transactions_in_USD)
Load * Inline [
rate
0.7
];
Résultats
Chargez les données et accédez au visionneur de modèle de données. Sélectionnez la table Transactions_in_USD et vous verrez que chaque enregistrement existant comporte une valeur de champ 'rate' égale à 0,7.
Quatrième script de données
Via l'instruction resident load, ce script de chargement concatène la table Transactions_in_USD à la table Transactions après avoir converti les montants en USD.
Concatenate (Transactions)
LOAD
id,
date,
amount * rate as amount
Resident Transactions_in_USD;
Résultats
Chargez les données et accédez à la table. Vous verrez de nouvelles entrées avec des montants en GBP dans les lignes huit à quatorze.
Résultats du quatrième script de chargementid | date | amount |
---|
1 | 12/30/2018 | 23.56 |
2 | 12/07/2018 | 556.31 |
3 | 12/16/2018 | 5.75 |
4 | 12/22/2018 | 125.00 |
5 | 12/22/2018 | 484.21 |
6 | 12/22/2018 | 59.18 |
7 | 12/23/2018 | 177.42 |
8 | 01/01/2019 | 114.989 |
8 | 01/01/2019 | 164.27 |
9 | 01/03/2019 | 268.80 |
9 | 01/03/2019 | 384.00 |
10 | 01/06/2019 | 18.074 |
10 | 01/06/2019 | 25.82 |
11 | 01/09/2019 | 218.40 |
11 | 01/09/2019 | 312.00 |
12 | 01/15/2019 | 3.192 |
12 | 01/15/2019 | 4.56 |
13 | 01/16/2019 | 63.168 |
13 | 01/16/2019 | 90.24 |
14 | 01/18/2019 | 13.524 |
14 | 01/18/2019 | 19.32 |
Cinquième script de chargement
Ce script de chargement abandonne les entrées en double du tableau de résultats du quatrième script de chargement, laissant uniquement les entrées avec des montants en GBP.
drop tables Transactions_in_USD;
Résultats
Chargez les données et accédez à la table.
Résultats du cinquième script de chargementid | date | amount |
---|
1 | 12/30/2018 | 23.56 |
2 | 12/07/2018 | 556.31 |
3 | 12/16/2018 | 5.75 |
4 | 12/22/2018 | 125.00 |
5 | 12/22/2018 | 484.21 |
6 | 12/22/2018 | 59.18 |
7 | 12/23/2018 | 177.42 |
8 | 01/01/2019 | 114.989 |
9 | 01/03/2019 | 268.80 |
10 | 01/06/2019 | 18.074 |
11 | 01/09/2019 | 218.40 |
12 | 01/15/2019 | 3.192 |
13 | 01/16/2019 | 63.168 |
14 | 01/18/2019 | 13.524 |
Après le chargement du cinquième script de chargement, le tableau de résultats montre l'ensemble des quatorze transactions qui existaient dans les deux ensembles de données de transactions ; en revanche, les montants des transactions 8 à 14 ont été convertis en GBP.
Si on supprime le préfixe NoConcatenate utilisé avant Transactions_in_USD dans le deuxième script de chargement, le script échoue avec l'erreur :“Table 'Transactions_in_USD' not found” (Table introuvable). Cela est dû au fait que la table Transactions_in_USD aurait été automatiquement concaténée à la table Transactions originale.