Tables système pour la résolution des problèmes de chargement de données - Amazon Redshift

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Tables système pour la résolution des problèmes de chargement de données

Les tables système Amazon Redshift suivantes peuvent être utiles pour le dépannage des problèmes de chargement de données :

  • Interrogez STL_LOAD_ERRORS pour découvrir les erreurs qui se sont produites lors de chargements spécifiques.

  • Interrogez STL_FILE_SCAN pour afficher les temps de chargement de fichiers spécifiques ou pour voir si un fichier spécifique a été lu.

  • Interrogez STL_S3CLIENT_ERROR pour trouver les détails des erreurs rencontrées lors du transfert de données à partir d’Amazon S3.

Pour rechercher et diagnostiquer des erreurs de chargement
  1. Créez une vue ou définissez une requête qui renvoie des informations détaillées sur les erreurs de chargement. L’exemple suivant joint la table STL_LOAD_ERRORS à la table STV_TBL_PERM pour que les ID de table correspondent aux noms de table réels.

    create view loadview as (select distinct tbl, trim(name) as table_name, query, starttime, trim(filename) as input, line_number, colname, err_code, trim(err_reason) as reason from stl_load_errors sl, stv_tbl_perm sp where sl.tbl = sp.id);
  2. Définissez l’option MAXERRORS de votre commande COPY avec une valeur assez grande pour permettre à la commande COPY de renvoyer des informations utiles sur vos données. Si COPY rencontre des erreurs, un message d’erreur vous dirige vers la consultation de la table STL_LOAD_ERRORS pour plus de détails.

  3. Interrogez la vue LOADVIEW pour voir les détails de l’erreur. Par exemple :

    select * from loadview where table_name='venue';
    tbl | table_name | query | starttime --------+------------+-------+---------------------------- 100551 | venue | 20974 | 2013-01-29 19:05:58.365391 | input | line_number | colname | err_code | reason +----------------+-------------+-------+----------+--------------------- | venue_pipe.txt | 1 | 0 | 1214 | Delimiter not found
  4. Résolvez le problème dans le fichier d’entrée ou le script de chargement, en fonction des informations que la vue renvoie. Certaines erreurs de chargement classique à surveiller particulièrement :

    • Incompatibilité entre les types de données de la table et les valeurs des champs des données d’entrée.

    • Incompatibilité entre le nombre de colonnes de la table et le nombre de champs des données d’entrée.

    • Guillemets non appariés. Amazon Redshift prend en charge les guillemets simples et doubles ; toutefois, ces guillemets doivent être bien équilibrés.

    • Format incorrect pour les données date/heure des fichiers d’entrée.

    • ut-of-range Valeurs O dans les fichiers d'entrée (pour les colonnes numériques).

    • Le nombre de valeurs distinctes pour une colonne dépasse la limite de son encodage de compression.