Cette rubrique décrit les limites d'utilisation de MaxCompute.
Avant d'utiliser MaxCompute, familiarisez-vous avec ses limites d'utilisation afin de garantir le bon fonctionnement de votre activité. Voici les limites applicables :
Quota de ressources de calcul par abonnement
Le quota d'achat par défaut pour les ressources de calcul par abonnement MaxCompute est de 2 000 UC.
Pour acheter plus de 2 000 UC, utilisez votre compte Alibaba Cloud pour soumettre un ticket. Nous examinerons votre demande sous trois jours ouvrables et vous informerons du résultat par SMS.
Limites des ressources de l'Édition Standard à la demande
MaxCompute limite les ressources de calcul à la demande de l'Édition Standard (UC) qu'un utilisateur unique peut utiliser par région. Cette limite empêche un utilisateur de monopoliser les ressources du cluster et de bloquer la soumission de jobs par les autres utilisateurs.
Pays ou zone | Région | Limite d'UC |
Régions en Chine | Chine (Hangzhou), Chine (Shanghai), Chine (Pékin), Chine (Zhangjiakou), Chine (Ulanqab), Chine (Shenzhen), Finance Chine (Shanghai), Gov Chine (Pékin), Finance Chine (Shenzhen) | 2 000 |
Chine (Chengdu), Chine (Hong Kong) | 500 | |
Autres pays ou zones | Singapour (Singapour), Malaisie (Kuala Lumpur), Indonésie (Jakarta), Japon (Tokyo), Allemagne (Francfort), États-Unis (Silicon Valley), États-Unis (Virginie), Royaume-Uni (Londres), Émirats arabes unis (Dubaï) | 500 |
Ces limites d'UC sont des maximums, et non des garanties. MaxCompute peut dépasser ces limites pour accélérer les requêtes.
Limites d'achat d'emplacements pour le service Tunnel par abonnement
La limite d'achat par défaut pour les emplacements du service Tunnel par abonnement dans MaxCompute est de 500. Pour acheter plus de 500 emplacements, soumettez un ticket.
Tunnel : Limites d'import et d'export
Pour connaître les limites relatives aux imports et aux exports de données dans MaxCompute, consultez Présentation de Tunnel.
Pour en savoir plus sur les imports et les exports de données, consultez Scénarios et outils d'import de données.
Informations sur les groupes de ressources partagés du service de transmission de données
Le tableau suivant répertorie le nombre maximal d'emplacements disponibles par projet pour les ressources partagées gratuites dans différentes régions. Les valeurs sont exprimées en emplacements.
|
Site |
Région |
Emplacements (Nombre) |
|
Chine |
Chine (Hangzhou) |
300 |
|
Chine |
Finance Chine Est 1 (Hangzhou) |
50 |
|
Chine |
Chine (Shanghai) |
600 |
|
Chine |
Finance Chine Est 2 (Shanghai) |
50 |
|
Chine |
Chine (Pékin) |
300 |
|
Chine |
Gov Cloud Chine (Pékin) |
100 |
|
Chine |
Chine (Zhangjiakou) |
300 |
|
Chine |
Chine (Ulanqab) |
300 |
|
Chine |
Chine (Shenzhen) |
150 |
|
Chine |
Finance Chine Sud 1 (Shenzhen) |
50 |
|
Chine |
Chine (Chengdu) |
150 |
|
Chine |
Chine (Hong Kong) |
50 |
|
Asie-Pacifique |
Singapour (Singapour) |
100 |
|
Asie-Pacifique |
Malaisie (Kuala Lumpur) |
50 |
|
Asie-Pacifique |
Indonésie (Jakarta) |
50 |
|
Asie-Pacifique |
Japon (Tokyo) |
50 |
|
Europe et Amériques |
Allemagne (Francfort) |
50 |
|
Europe et Amériques |
États-Unis (Silicon Valley) |
100 |
|
Europe et Amériques |
États-Unis (Virginie) |
50 |
|
Europe et Amériques |
Royaume-Uni (Londres) |
50 |
|
Moyen-Orient et Inde |
Émirats arabes unis (Dubaï) |
50 |
Chaque opération dans le service de tunneling de données (telles que l'écriture d'un bloc, la création d'une session de téléchargement ou le vidage) occupe un emplacement. Lorsqu'une connexion reste inactive sans transfert de données pendant une période prolongée, le serveur la déconnecte automatiquement et libère l'emplacement occupé. Par conséquent, même si le nombre d'emplacements concurrents atteint la limite, les connexions inactives sont automatiquement récupérées après un certain délai sans intervention manuelle.
Limites SQL
Ces limites s'appliquent aux jobs SQL dans MaxCompute.
Élément | Limite | Catégorie | Description |
Longueur du nom de table | 128 octets | Limite de longueur | Un nom de table ne peut pas contenir de caractères spéciaux, doit commencer par une lettre et ne peut contenir que des lettres (a-z, A-Z), des chiffres et des traits de soulignement (_). |
Longueur du nom de colonne | 128 octets | Limite de longueur |
|
Longueur du commentaire | 1 024 octets | Limite de longueur | Un commentaire doit être une chaîne valide ne dépassant pas 1 024 octets. |
Colonnes par table | 1 200 | Limite de quantité | Une table prend en charge un maximum de 1 200 colonnes. |
Partitions par table | 60 000 | Limite de quantité | Une table prend en charge un maximum de 60 000 partitions. |
Niveaux de partition par table | 6 | Limite de quantité | Une table prend en charge un maximum de six niveaux de partition. |
Affichage à l'écran | 10 000 lignes | Limite de quantité | Une instruction SELECT peut afficher un maximum de 10 000 lignes à l'écran. |
Tables de destination pour | 256 | Limite de quantité | Une instruction |
| 256 | Limite de quantité | Une instruction |
| 128 | Limite de quantité | Dans une opération |
Limite de mémoire | 512 Mo | Limite de quantité | Dans une opération |
| 1 000 lignes | Limite de quantité | Si une sous-requête contient une colonne de partition, la sous-requête peut renvoyer un maximum de 1 000 lignes. |
Longueur de l'instruction SQL | 2 Mo | Limite de longueur | Une instruction SQL ne peut pas dépasser 2 Mo. Cette limite s'applique également aux instructions SQL exécutées via un SDK. Si une instruction SQL contient des commandes PAI et dépasse 2 Mo, vous ne pouvez pas contourner la limite de longueur en migrant vers un nœud ODPS Script. Les nœuds ODPS Script s'exécutent sur le moteur SQL en mode script, qui prend uniquement en charge les instructions SET, DDL et DML et ne prend pas en charge les commandes PAI. Nous vous recommandons de continuer à utiliser le nœud ODPS SQL et de diviser l'instruction SQL en plusieurs fragments, chacun inférieur à 2 Mo, et de les exécuter séparément. |
Taille de cellule | 8 Mo | Limite de quantité | Les données d'une seule cellule de table ne peuvent pas dépasser 8 Mo. |
Nombre de paramètres dans une clause IN | 1 024 | Limite de quantité | Le nombre maximal recommandé de paramètres dans une clause |
Taille de | 1 Mo | Limite de longueur | La taille de |
Vues | Non inscriptibles | Limite d'opération | Les vues sont en lecture seule et ne prennent pas en charge les opérations |
Type de données de colonne | Non modifiable | Limite d'opération | Vous ne pouvez pas modifier le type de données ou la position d'une colonne existante. |
Fonction définie par l'utilisateur Java (UDF) | Ne peut pas être | Limite d'opération | Une UDF Java ne peut pas être définie comme |
Nombre maximal de partitions à interroger | 10 000 | Limite de quantité | Une requête peut analyser un maximum de 10 000 partitions. |
Taille du plan d'exécution SQL | 1 Mo | Limite de longueur | Le plan d'exécution généré par MaxCompute SQL ne peut pas dépasser 1 Mo. Si c'est le cas, le job échoue et renvoie l'erreur suivante : |
Durée maximale d'exécution du job | 72 heures | Limite de durée d'exécution | Par défaut, la durée maximale d'exécution d'un seul job SQL est de 24 heures. Vous pouvez étendre cette limite à 72 heures en utilisant la commande suivante. Le système termine automatiquement tout job qui s'exécute pendant plus de 72 heures. |
Fréquence de création de partition | 120 fois/15 secondes | Limite de fréquence | Vous pouvez exécuter l'opération |
Pour plus d'informations sur SQL, consultez SQL.
Limites MapReduce
Le tableau suivant répertorie les limites pour le développement de jobs MapReduce dans MaxCompute.
|
Limite |
Valeur |
Catégorie |
Paramètre de configuration |
Par défaut |
Configurable |
|
Mémoire par instance |
256 Mo–12 Go |
Mémoire |
|
2 048 Mo + 1 024 Mo |
Oui |
|
Ressources par job |
256 |
Quantité |
— |
— |
Non |
|
Entrées par job |
1 024 |
Quantité |
— |
— |
Non |
|
Sorties par job |
256 |
Quantité |
— |
— |
Non |
|
Tables distinctes dans toutes les entrées |
64 |
Quantité |
— |
— |
Non |
|
Compteurs personnalisés par job |
64 |
Quantité |
— |
— |
Non |
|
Instances Map par job |
1–100 000 |
Quantité |
|
Calculé à partir de la taille de fractionnement |
Oui |
|
Instances Reduce par job |
0–2 000 |
Quantité |
|
1/4 des instances map |
Oui |
|
Tentatives par instance ayant échoué |
3 |
Quantité |
— |
— |
Non |
|
Débogage local : instances map |
2 (par défaut), max 100 |
Quantité |
— |
2 |
Non |
|
Débogage local : instances reduce |
1 (par défaut), max 100 |
Quantité |
— |
1 |
Non |
|
Débogage local : enregistrements téléchargés par entrée |
100 (par défaut), max 10 000 |
Quantité |
— |
100 |
Non |
|
Lectures répétées d'une ressource par instance |
64 |
Quantité |
— |
— |
Non |
|
Taille totale des ressources par job |
2 Go |
Longueur |
— |
— |
Non |
|
Taille de fractionnement |
≥ 1 |
Longueur |
|
256 Mo |
Oui |
|
Longueur du contenu de la colonne STRING |
8 Mo |
Longueur |
— |
— |
Non |
|
Délai d'expiration de l'exécution du worker |
1–3 600 secondes |
Temps |
|
600 secondes |
Oui |
|
Types de champs pris en charge dans les ressources de table |
BIGINT, DOUBLE, STRING, DATETIME, BOOLEAN |
Type de données |
— |
— |
Non |
Pour plus d'informations sur MapReduce, consultez MapReduce.
Limitations PyODPS
Les limitations suivantes s'appliquent lors du développement de jobs PyODPS dans MaxCompute à l'aide de DataWorks :
Un nœud PyODPS peut traiter un maximum de 50 Mo de données locales et consommer jusqu'à 1 Go de mémoire. Si un nœud dépasse ces limites, le système termine le job. Pour éviter cela, évitez d'ajouter du code Python de traitement de données inutile à vos jobs PyODPS.
Pour une expérience de développement et de débogage plus efficace, nous vous recommandons d'écrire votre code dans un IDE local plutôt que directement dans l'interface utilisateur de DataWorks.
Pour éviter une charge excessive sur la passerelle DataWorks, DataWorks limite l'utilisation de la mémoire et du CPU pour PyODPS. L'erreur
Got killedindique que votre processus a été terminé pour avoir dépassé la limite de mémoire. Pour éviter cela, évitez d'effectuer des opérations de données localement. Ces limites ne s'appliquent pas aux jobs SQL ou DataFrame (sauf pourto_pandas) initiés par PyODPS.-
Les fonctionnalités suivantes sont limitées car des packages tels que
matplotlibne sont pas disponibles :La fonction DataFrame
plotn'est pas disponible.Les fonctions définies par l'utilisateur (UDF) DataFrame doivent être soumises à MaxCompute pour exécution. En raison des restrictions du bac à sable Python, les seules bibliothèques tierces prises en charge sont les bibliothèques Python pures et NumPy. Vous ne pouvez pas utiliser pandas directement dans les UDF.
Pour le code en dehors des UDF, vous pouvez utiliser les packages NumPy et pandas préinstallés dans DataWorks. Les packages tiers contenant du code binaire ne sont pas pris en charge.
Pour des raisons de compatibilité, DataWorks définit options.tunnel.use_instance_tunnel sur
Falsepar défaut. Pour activer InstanceTunnel globalement, vous devez définir manuellement cette valeur surTrue.Pour des raisons d'implémentation, le package Python atexit n'est pas pris en charge. Utilisez plutôt un bloc try-finally.
Pour plus d'informations sur PyODPS, consultez PyODPS.
Limites de jobs concurrents
Le tableau suivant répertorie le nombre maximal de jobs concurrents dans un seul projet MaxCompute pour chaque région.
|
Région |
Jobs concurrents maximaux |
|
Chine (Hangzhou), Chine (Shanghai), Chine (Pékin), Chine (Zhangjiakou), Chine (Ulanqab), Chine (Shenzhen) et Chine (Chengdu) |
2 500 |
|
Chine (Hong Kong), Singapour, Malaisie (Kuala Lumpur), Indonésie (Jakarta), Japon (Tokyo), Allemagne (Francfort), États-Unis (Silicon Valley), États-Unis (Virginie), Royaume-Uni (Londres) et Émirats arabes unis (Dubaï) |
1 000 |
La soumission d'un job qui dépasse la limite de concurrence pour un projet MaxCompute renvoie une erreur. Par exemple : com.aliyun.odps.OdpsException: Request rejected by flow control. You have exceeded the limit for the number of tasks you can run concurrently in this project. Please try later.
Limites de sécurité et d'autorisation
│ │ 500 │
│ │ │
│ │ 10 000 │
│ │ │
│ │ 512 Ko │
│ │ │
│ │ 32 Ko │
│ │ │
|
Description |
Limite |
|
Longueur en caractères d'un nom de package. |
128 octets |
|
Nombre de projets dans lesquels un package peut être installé. |
100 000 |
|
Nombre maximal de ressources qu'un package peut contenir. |
1 000 |
|
Nombre de packages qu'un projet peut créer. |
100 000 |
|
Nombre maximal de packages qu'un projet MaxCompute peut installer. |
100 000 |
|
Nombre maximal de packages qu'un projet MaxCompute peut installer depuis un autre projet MaxCompute. |
100 |
|
Longueur en caractères d'un commentaire. |
1 Ko |
|
Limites du nom de rôle. |
Ne doit pas dépasser 64 octets. Ne peut contenir que des lettres minuscules (a-z), des lettres majuscules (A-Z), des chiffres et des traits de soulignement (_), et doit commencer par une lettre. |
|
Nombre de rôles dans un seul projet. |
500 |
|
Nombre d'utilisateurs dans un seul projet. |
10 000 |
|
Limite de longueur de texte pour une politique liée à un rôle. |
512 Ko |
|
Limite de longueur de texte pour une seule instruction dans une politique. |
32 Ko |