La nouvelle version de l'expédition de données depuis Simple Log Service (SLS) vers MaxCompute offre une haute disponibilité grâce à des tentatives automatiques. Cette rubrique détaille les garanties de stabilité, la gestion des données erronées et les limites d'utilisation.
Stabilité
Lecture depuis SLS
|
Élément |
Description |
|
Disponibilité |
Haute disponibilité. Si SLS rencontre une erreur empêchant la lecture des données, la tâche d'expédition de données MaxCompute tente au moins 10 fois en interne. En cas d'échec persistant, le système signale une erreur et redémarre la tâche. |
Écriture dans MaxCompute
|
Élément |
Description |
|
Concurrence |
Les données sont partitionnées par shards SLS et des instances d'expédition sont créées en conséquence pour permettre une mise à l'échelle rapide. En cas de fractionnement de shard sur un Logstore source dans SLS, les instances d'expédition montent en puissance en quelques secondes pour accélérer l'exportation des données. |
|
Aucune perte de données |
Les tâches d'expédition de données MaxCompute utilisent des consumer groups pour garantir la cohérence. Le décalage (offset) n'est validé qu'après la livraison des données, ce qui empêche toute perte. |
|
Modifications du schéma |
Si vous ajoutez une colonne à une table MaxCompute pendant l'expédition des données, la nouvelle colonne est écrite uniquement dans les nouvelles partitions, et non dans les partitions existantes ou actuelles. Remarque
En raison des limites de MaxCompute, il est interdit d'insérer, de mettre à jour ou de supprimer des colonnes, ainsi que de modifier leur ordre pendant l'expédition des données. Ces opérations rendent la tâche d'expédition anormale et irrécupérable. Pour plus d'informations, consultez Limites de MaxCompute. |
Gestion des données erronées
|
Type d'erreur |
Comptabilisé comme un enregistrement ayant échoué |
Description |
|
Erreur de partition |
Oui |
Cela concerne notamment les partitions invalides ou les colonnes de clé de partition inexistantes. L'enregistrement de données n'est pas écrit dans MaxCompute. |
|
Colonne de données invalide |
Non |
Cela concerne notamment les incompatibilités de type de données ou les échecs de conversion de type. Seule la colonne concernée est ignorée ; les données des autres colonnes sont écrites normalement dans MaxCompute. |
|
Colonne de données trop longue |
Non |
Cela se produit lorsque les données dépassent la limite de longueur du type string ou varchar. Les données de cette colonne sont tronquées avant l'écriture dans MaxCompute. Les données des autres colonnes sont écrites normalement. |
Surveillance et alertes
|
Stabilité |
Description |
|
Surveillance et alertes |
L'expédition de données propose une surveillance complète permettant de suivre en temps réel des métriques telles que la latence et le trafic. Configurez des alertes personnalisées selon vos besoins métier pour détecter rapidement les problèmes d'expédition, tels qu'un nombre insuffisant d'instances d'exportation ou des limites de quota réseau. Pour plus d'informations, consultez Configurer une alerte pour une tâche d'expédition de données MaxCompute (nouvelle version). |
Redémarrage d'une tâche
|
Élément |
Description |
|
Trop de partitions |
<!--@p {"id":"a4ebfaa23cxw1"}--br>Au redémarrage d'une tâche, si le nombre de partitions est trop élevé et que l'opération d'écriture ne se termine pas dans les 5 minutes, des duplications de données peuvent survenir. |
|
Échec d'écriture des données |
Au redémarrage d'une tâche, si l'écriture des données dans MaxCompute échoue en raison d'erreurs d'autorisation ou de réseau, des duplications partielles de données peuvent survenir. |
Limites
Réseau
|
Élément |
Description |
|
Réseau pour l'expédition intra-région |
Les données transitent par le réseau interne Alibaba Cloud lors de l'expédition au sein de la même région, ce qui garantit une meilleure stabilité et vitesse. |
Trafic de lecture
|
Élément |
Description |
|
Trafic de lecture |
Une limite de trafic maximale s'applique à chaque projet et à chaque shard. Pour plus d'informations, consultez Lectures et écritures de données. En cas de dépassement de la limite, fractionnez le shard ou demandez une augmentation de la limite de trafic de lecture pour le projet. Le dépassement entraîne l'échec de la tâche d'expédition de données MaxCompute lors de la lecture. La tâche tente au moins 10 fois en interne. En cas d'échec persistant, le système signale une erreur et redémarre la tâche. |
Écriture dans MaxCompute
|
Élément |
Description |
|
Instances concurrentes |
Le nombre maximal d'instances d'exportation concurrentes est de 64. Si le nombre de shards dépasse 64, plusieurs shards sont fusionnés dans une seule instance pour l'exportation. Le système s'efforce de maintenir un nombre équivalent de shards par instance. |
|
Seuil d'écriture |
Important
Le dépassement de la limite d'écriture de MaxCompute rend les écritures instables et déclenche une limitation côté MaxCompute. Cela peut provoquer des erreurs FlowExceeded ou SlotExceed. Contactez les ingénieurs de garde MaxCompute pour résoudre le problème. |
|
Modification du schéma de table interdite pendant l'expédition |
L'expédition de données MaxCompute (nouvelle version) utilise l'écriture en flux MaxCompute. Pendant l'écriture en flux, le service MaxCompute Tunnel interdit les modifications de schéma telles que l'insertion, la mise à jour ou la suppression de colonnes, ou la modification de l'ordre des colonnes dans la table cible. Pour plus d'informations, consultez Présentation du service Lindorm Tunnel. En raison de cette restriction, vous ne pouvez pas utiliser simultanément l'expédition de données MaxCompute (nouvelle version) et l'expédition de données MaxCompute (version héritée) pour écrire dans la même table MaxCompute. |
|
Tables spéciales non prises en charge |
Vous ne pouvez pas écrire de données dans des tables externes MaxCompute, des tables transactionnelles ou des tables clusterisées. |
|
Modifications du schéma de table |
Si le schéma de votre table MaxCompute change, suspendez la tâche d'expédition de données MaxCompute pendant 20 minutes, puis redémarrez-la pour que la modification prenne effet. |
|
Heure de début |
Remarque
En raison des limites de slots et de requêtes par seconde (QPS) de MaxCompute, l'expédition de données historiques peut facilement dépasser le seuil d'écriture de MaxCompute. Cette fonctionnalité n'est donc plus prise en charge. |
Gestion des autorisations
|
Élément |
Description |
|
Autorisation d'écriture |
L'autorisation d'écriture MaxCompute prend en charge les utilisateurs RAM (Resource Access Management) et les rôles RAM. Vous devez accorder les autorisations séparément dans MaxCompute. |
Types de données
-
Colonnes régulières
Type
Exemple
Description
string
"hello"
Longueur maximale : 8 Mo.
datetime
"2021-12-22 05:00:00"
Les données dans SLS doivent respecter les exigences de format de données MaxCompute.
date
"2021-12-22"
Les données dans SLS doivent respecter les exigences de format de données MaxCompute.
timestamp
1648544867
Précision en millisecondes ou en secondes.
decimal
1.2
Les données dans SLS doivent respecter les exigences de format de données MaxCompute.
char
"hello"
Longueur maximale : 255 octets.
varchar
"hello"
Longueur maximale : 65 535 octets.
binary
"hello"
Longueur maximale : 8 Mo.
bigint
123
Prend en charge jusqu'à int64.
boolean
1
-
1, t, T, true, TRUE et True sont analysés comme True.
-
0, f, F, false, FALSE et False sont analysés comme False.
double
1.2
Prend en charge jusqu'aux nombres à virgule flottante 64 bits.
float
1.2
Prend en charge jusqu'aux nombres à virgule flottante 32 bits.
integer
123
Prend en charge jusqu'à int32.
smallint
12
Prend en charge jusqu'à int16.
tinyint
12
Prend en charge jusqu'à int8.
-
-
Colonnes de clé de partition
Élément
Description
Colonne de clé de partition
Traitée comme une chaîne. Doit respecter les exigences de format pour les colonnes de clé de partition MaxCompute.
Configuration d'un champ de journal autre que
__partition_time__ou__receive_time__Si vous configurez un champ de journal autre que
__partition_time__ou__receive_time__pour une colonne de clé de partition, les performances d'expédition des données peuvent être affectées.
Gérer l'expédition
|
Élément |
Description |
|
Suspension d'une tâche d'expédition de données |
Une tâche d'expédition de données enregistre le curseur de journal de la dernière livraison. Lors de la reprise, la tâche continue à partir du curseur enregistré. Les règles suivantes s'appliquent en cas de suspension d'une tâche d'expédition de données.
|
Liste blanche IP MaxCompute
|
Élément |
Description |
|
L'activation d'une liste blanche dans la gestion de projet MaxCompute, telle qu'une liste blanche d'IP de réseau classique, peut entraîner l'échec de l'expédition des données |
Exécutez les commandes suivantes dans MaxCompute pour résoudre l'échec de l'expédition des données causé par la liste blanche.
Pour plus d'informations, consultez Échec de la tâche après activation d'une liste blanche IP |