Exportation de données au Réseau Commercial Galactique
Dans cette étape, vous allez apprendre à exporter des données traitées à partir d'Hadoop au Réseau Commercial Galactique, en vous assurant que les informations sur les cargaisons sont accessibles à tous les systèmes membres.
Tout d'abord, créez un nouveau répertoire dans HDFS appelé /home/hadoop/exports
:
hdfs dfs -mkdir /home/hadoop/exports
Maintenant, lancez le shell Hive en exécutant la commande suivante :
hive
Exécutez une requête Hive pour traiter le fichier orion_manifest.csv
et générer un rapport de synthèse :
CREATE TABLE orion_manifest(
item STRING,
quantity INT,
origin STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE;
LOAD DATA INPATH '/home/hadoop/imports/orion_manifest.csv' INTO TABLE orion_manifest;
INSERT OVERWRITE DIRECTORY '/home/hadoop/exports/orion_summary'
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
SELECT origin, SUM(quantity) AS total_quantity
FROM orion_manifest
GROUP BY origin;
EXIT;
Cette requête Hive créera une table à partir du fichier orion_manifest.csv
, traitera les données et stockera le rapport de synthèse dans le répertoire /home/hadoop/exports/orion_summary
dans HDFS.
Exporte le rapport de synthèse de HDFS vers le système de fichiers local :
mkdir /home/hadoop/galactic_exports
hadoop fs -get /home/hadoop/exports/orion_summary/* /home/hadoop/galactic_exports/
Cette commande créera un répertoire galactic_exports
dans le répertoire /home/hadoop
et copiera les fichiers du répertoire /home/hadoop/exports/orion_summary
dans HDFS vers le répertoire galactic_exports
.
Enfin, chargez le rapport de synthèse sur le Réseau Commercial Galactique à l'aide de la commande scp
:
scp /home/hadoop/galactic_exports/* localhost:/home/hadoop/incoming/reports/
Cette commande copiera en toute sécurité les fichiers du répertoire galactic_exports
vers le répertoire /incoming/reports/
sur le serveur localhost
, rendant le rapport de synthèse accessible à tous les systèmes membres du Réseau Commercial Galactique. En pratique, vous pouvez remplacer localhost
par un serveur réel, par exemple trade.network.com
.