Tunnel est un outil en ligne de commande conçu pour charger de grands volumes de données dans les tables MaxCompute par lots. Il est adapté aux scénarios de calcul hors ligne. Ce tutoriel vous guide dans la création d'une table de destination et le chargement d'un fichier journal CSV local via le client odpscmd.
Prérequis
Avant de commencer, assurez-vous de disposer des éléments suivants :
Le client odpscmd installé et configuré. Pour plus d'informations, consultez la rubrique Installation et configuration du client MaxCompute.
Un fichier journal local prêt à être chargé. Ce tutoriel utilise le fichier exemple loghub.csv.
Étape 1 : Créer la table de destination
Dans le client odpscmd, exécutez les commandes suivantes pour créer une table nommée loghub.
La première commande active les types de données MaxCompute V2.0. Soumettez-la conjointement avec l'instruction CREATE TABLE au cours de la même session.
set odps.sql.type.system.odps2=true;
-- Create a table named loghub.
CREATE TABLE loghub
(
client_ip STRING,
receive_time STRING,
topic STRING,
id STRING,
name VARCHAR(32),
salenum STRING
);
Étape 2 : Charger les données du journal
Exécutez la commande suivante pour charger le fichier journal dans la table loghub. Adaptez le chemin du fichier selon votre système d'exploitation.
Windows
Tunnel u D:\loghub.csv loghub;
Linux ou macOS
Tunnel u /path/to/loghub.csv loghub;
| Paramètre | Description |
|---|---|
D:\loghub.csv ou /path/to/loghub.csv |
Chemin d'accès au fichier de données de journal local |
loghub |
Nom de la table MaxCompute de destination |
Les caractères génériques et les expressions régulières ne sont pas pris en charge pour les chargements via Tunnel. Spécifiez le chemin d'accès exact au fichier.
Étape 3 : Vérifier le chargement
Exécutez la requête suivante pour vérifier que les données ont bien été chargées dans la table :
SELECT * FROM loghub;
Si le chargement a réussi, la requête renvoie les lignes chargées, comme illustré ci-dessous.
xxx >SELECT * FROM loghub;
ID = 20191224054915??erwinv21
Job Queueing...
Summary:
+--------------+--------------+-------+------+---------+----------+
| client_ip | receive_time | topic | id | name | salenum |
+--------------+--------------+-------+------+---------+----------+
| 47.95.63.148 | 1572925369 | NULL | 62 | ????13 | 2000 |
| 47.95.63.148 | 1572925369 | NULL | 61 | ????12 | 606 |
| 47.95.63.148 | 1572925369 | NULL | 60 | ????11 | 909 |
| 47.95.63.148 | 1572925369 | NULL | 32 | ????3 | 2000 |
| 47.95.63.148 | 1572925369 | NULL | 31 | ????2 | 606 |
| 47.95.63.148 | 1572925369 | NULL | 30 | ????1 | 909 |
| 47.95.63.148 | 1572925369 | NULL | 31 | ????2 | 3000 |
| 47.95.63.148 | 1572925369 | NULL | 30 | ????1 | 1000 |
| 47.95.63.148 | 1572925369 | NULL | 20 | ??????? | 21 |
| 47.95.63.148 | 1572925369 | NULL | 6 | ???? | 40 |
| 47.95.63.148 | 1572925369 | NULL | 5 | ???? | 20 |
| 47.95.63.148 | 1572925369 | NULL | 2 | ??? | 260 |
| 47.95.63.148 | 1572925369 | NULL | 2 | ??? | 200 |
| 47.95.63.148 | 1572925369 | NULL | 1 | C?? | 100 |
| 47.95.63.148 | 1572925369 | NULL | 9 | vivo | 400 |
| 47.95.63.148 | 1572925369 | NULL | 8 | oppo | 200 |
| 47.95.63.148 | 1572925369 | NULL | 7 | ??? | 30 |
| 47.95.63.148 | 1572925369 | NULL | 12 | ?????? | 0 |
| 47.95.63.148 | 1572925369 | NULL | 11 | ????? | 600 |
| 47.95.63.148 | 1572925369 | NULL | 10 | ??? | 90 |
+--------------+--------------+-------+------+---------+----------+
20 records (at most 10000 supported) fetched by instance tunnel.
Si la requête ne renvoie aucune ligne ou affiche une erreur, vérifiez les points suivants :
Le chemin du fichier indiqué à l'étape 2 correspond à l'emplacement réel de votre fichier CSV.
Le schéma de la table correspond aux colonnes de votre fichier CSV.
Le client odpscmd est connecté au bon projet MaxCompute.
Étapes suivantes
Pour obtenir une référence complète des commandes Tunnel, y compris leurs fonctionnalités et leur utilisation pour le chargement ou le téléchargement de données, consultez la rubrique Notes d'utilisation de Tunnel.