Tous les produits
Search
Centre de documentation

MaxCompute:SETPROJECT

Dernière mise à jour :Aug 12, 2026

La commande SETPROJECT permet de consulter et de définir les propriétés au niveau du projet dans MaxCompute. Elle sert à inspecter l'ensemble des paramètres configurables ou à mettre à jour les configurations du projet et de la session, telles que les ressources d'ordonnancement, le comportement SQL, les politiques de sécurité et les types de données.

Plateformes

Exécutez SETPROJECT sur le client MaxCompute (odpscmd) ou via le nœud ODPS SQL de DataWorks.

Remarques d'utilisation

  • Un projet MaxCompute diffère d'un espace de travail DataWorks. Pour obtenir le nom de votre projet, connectez-vous à la console MaxCompute et vérifiez la colonne Project Name dans l'onglet Project management de la console MaxCompute.

  • La commande SETPROJECT ne permet ni de créer ni de supprimer des projets. Pour créer un projet, consultez la rubrique Créer un projet MaxCompute.

Consulter les propriétés du projet

Cette commande retourne toutes les propriétés au niveau du projet ainsi que leurs valeurs actuelles.

Pour les propriétés au niveau de la session, utilisez plutôt la commande SHOW FLAGS. Reportez-vous à la section « SHOW FLAGS » dans la rubrique Opérations SET.

Syntaxe

setproject;

Propriétés

Le tableau suivant répertorie les propriétés courantes du projet.

La colonne Scope indique si une propriété s'applique uniquement à la session en cours ( Session ) ou à l'ensemble du projet ( Project ). Les propriétés limitées à la session ne sont valides que pendant la durée de la connexion actuelle et disparaissent à la fin de celle-ci. Les modifications au niveau du projet s'appliquent globalement à toutes les sessions.
Catégorie Portée Paramètre Description Valeurs valides Instructions concernées
Écosystème Session console.sql.result.instancetunnel Active ou désactive InstanceTunnel. Consultez les Remarques d'utilisation pour plus de détails sur les commandes Tunnel. True : activé. False : désactivé. SELECT
Ordonnancement Session odps.stage.mapper.mem Mémoire allouée à chaque worker Map. De 256 Mio à 12 288 Mio. Valeur par défaut : 1 024 Mio. ALL
Ordonnancement Session odps.stage.reducer.mem Mémoire allouée à chaque worker Reduce. De 256 Mio à 12 288 Mio. Valeur par défaut : 1 024 Mio. ALL
Ordonnancement Session odps.stage.joiner.mem Mémoire allouée à chaque worker Join. De 256 Mio à 12 288 Mio. Valeur par défaut : 1 024 Mio. ALL
Ordonnancement Session odps.stage.mem Mémoire totale pour tous les workers d'une tâche. Priorité inférieure à odps.stage.mapper.mem, odps.stage.reducer.mem et odps.stage.joiner.mem. De 256 Mio à 12 288 Mio. Aucune valeur par défaut. ALL
Ordonnancement Session odps.stage.mapper.split.size Taille des données d'entrée par worker Map (taille de split). Ce paramètre contrôle le nombre de workers lors de la phase Map. Si l'instruction SQL utilise LIMIT, le nombre de workers simultanés est plafonné à 1 ; évitez d'utiliser LIMIT lors de la configuration de ce paramètre. Valeur par défaut : 256 Mio. ALL
Ordonnancement Session odps.sql.split.size Taille de shard pour le traitement parallèle au niveau de la table. Exemple : {"table1": 1024, "table2": 512} Unité : Mio. ALL
Ordonnancement Session odps.sql.split.row.count Nombre de lignes par shard pour le traitement parallèle au niveau de la table. S'applique uniquement aux tables internes non transactionnelles et non clusterisées. Exemple : {"table1": 100, "table2": 500} Entier positif. ALL
Ordonnancement Session odps.sql.split.dop Niveau de parallélisme pour le traitement au niveau de la table. Concerne uniquement les tables internes non transactionnelles et non clusterisées. Exemple : {"table1": 1, "table2": 5} Entier positif. ALL
Ordonnancement Session odps.stage.reducer.num Nombre de workers à chaque étape Reduce. Si l'instruction SQL contient LIMIT, le nombre de workers simultanés est limité à 1. ALL
Ordonnancement Session odps.stage.joiner.num Nombre de workers à chaque étape Join. La présence de LIMIT dans l'instruction SQL limite les workers simultanés à 1. ALL
Ordonnancement Session odps.stage.num Nombre total de workers simultanés dans une tâche. Ce paramètre est moins prioritaire que odps.stage.mapper.split.size, odps.stage.reducer.num et odps.stage.joiner.num. L'utilisation de LIMIT dans l'instruction SQL plafonne les workers simultanés à 1. ALL
Ordonnancement Projet odps.instance.priority.enable Active la priorité des tâches pour les projets utilisant des ressources de calcul par abonnement. Voir Priorité des tâches. Seul le propriétaire du projet ou un utilisateur doté du rôle Super_Administrator peut exécuter cette commande. True : activé. False : désactivé. ALL
SQL Session odps.sql.reshuffle.dynamicpt Active le partitionnement dynamique afin d'éviter la prolifération de petits fichiers. Si seul un petit nombre de partitions dynamiques est généré, définissez cette valeur sur False pour prévenir la skew des données. True : activé. False : désactivé. INSERT INTO, INSERT OVERWRITE
SQL Session odps.sql.udf.getjsonobj.new Détermine si GET_JSON_OBJECT conserve la chaîne originale dans sa valeur de retour. Pour les projets créés le 21 janvier 2021 ou après, les chaînes originales sont retournées par défaut. Les projets antérieurs retournent par défaut les caractères réservés JSON sous forme de caractères d'échappement. Voir Fonctions de chaîne. True : activé. False : désactivé. UDF
SQL Session odps.sql.udf.jvm.memory Mémoire heap maximale de la machine virtuelle Java (JVM) pour une fonction définie par l'utilisateur (UDF). Augmentez cette valeur si des tris volumineux en mémoire provoquent des erreurs de mémoire insuffisante (OOM), mais optimisez également le code UDF pour traiter la cause racine. De 256 Mio à 12 288 Mio. Valeur par défaut : 1 024 Mio. UDF
SQL Session odps.function.timeout Délai d'expiration pour une UDF. De 0 s à 3 600 s. Valeur par défaut : 600 s. UDF
SQL Session odps.sql.session.resources Ressources référencées par un type défini par l'utilisateur (UDT). Séparez les différentes ressources par des virgules. Voir Vue d'ensemble. Ressources téléchargées. UDT
SQL Session odps.sql.udt.display.tostring Active le mécanisme java.util.Objects.toString(...) sur le Wrap pour toutes les colonnes de sortie UDT. True : activé. False : désactivé. UDT
SQL Session odps.sql.session.java.imports Packages Java référencés par les UDT. Séparez les différents packages par des virgules. Voir Vue d'ensemble. Packages Java téléchargés. UDT
SQL Session odps.sql.skewjoin Active SKEWJOIN pour éviter les problèmes de longue traîne (long tail). True : activé. False : désactivé. SELECT, JOIN
SQL Session odps.sql.skewinfo Clé et valeur sur lesquelles opère SKEWJOIN. Voir Optimisation de la skew des données. SELECT, JOIN
SQL Session odps.sql.udf.ppr.deterministic Active l'élagage de partitions pour les UDF. Voir Clause WHERE. True : activé. False : désactivé. UDF
SQL Session odps.sql.udf.ppr.to.subquery Ignore les erreurs lors du remplissage des résultats pendant l'élagage de partitions. Voir Syntaxe SELECT. True : activé. False : désactivé. UDF
SQL Session odps.optimizer.enable.range.partial.repartitioning Active la fonctionnalité Shuffle Remove pour les tables clusterisées par plage. True : activé. False : désactivé. INSERT OVERWRITE, CREATE TABLE
SQL Session odps.optimizer.merge.partitioned.table Lorsqu'une requête utilise plusieurs fois la même table partitionnée, fusionne les lectures de table pour minimiser les E/S et améliorer les performances. True : activé. False : désactivé. SELECT
SQL Session odps.optimizer.skew.join.topk.num Nombre de valeurs de clés chaudes récupérées par l'optimiseur lors des opérations d'agrégation. Voir HINT SKEWJOIN. HINT SKEWJOIN
SQL Session odps.optimizer.stat.collect.auto Active la fonctionnalité Freeride qui collecte automatiquement les statistiques de colonnes. Voir Optimiseur. True : activé. False : désactivé. CREATE TABLE, INSERT INTO, INSERT OVERWRITE
SQL Session odps.optimizer.stat.collect.plan Plan de collecte spécifiant les statistiques de colonnes à rassembler. Voir Optimiseur. CREATE TABLE, INSERT INTO, INSERT OVERWRITE
SQL Session odps.sql.external.net.vpc Active l'accès via Virtual Private Cloud (VPC) pour les tables externes. Voir Tables externes Hologres. True : activé. False : désactivé. CREATE TABLE
SQL Session odps.sql.groupby.position.alias Autorise l'utilisation de constantes entières dans GROUP BY pour référencer des positions de colonnes dans SELECT. True : activé. False : désactivé. SELECT, GROUP BY
SQL Session odps.sql.groupby.skewindata Active la fonctionnalité anti-skew pour GROUP BY. True : activé. False : désactivé. GROUP BY
SQL Session odps.sql.orderby.position.alias Permet d'utiliser des constantes entières dans ORDER BY pour faire référence aux positions de colonnes dans SELECT. True : activé. False : désactivé. ORDER BY, SELECT
SQL Session odps.sql.mapjoin.memory.max Taille de la mémoire pour les petites tables chargées en mémoire lors d'un MAPJOIN. La limite globale totale pour toutes les petites tables d'une tâche correspond à std::min(8G, odps.sql.mapjoin.memory.max × number of small tables). De 0 Mio à 8 192 Mio. JOIN
SQL Session odps.sql.distributed.map.join.memory.max Mémoire par instance HashTableBuilder lors d'un MAPJOIN. Valeur par défaut : 2 048 Mio. De 0 Mio à 8 192 Mio. JOIN
SQL Session odps.sql.python.version Version de Python utilisée lors de l'exécution des instructions SQL. cp27, cp37 UDTF, UDAF
SQL Session odps.sql.select.output.format Contrôle l'affichage des en-têtes de colonnes dans les résultats SELECT par le client MaxCompute. Voir Client MaxCompute (odpscmd). {"needHeader":false,"fieldDelim":""} : sans en-têtes. {"needHeader":true,"fieldDelim":""} : avec en-têtes. ALL
SQL Session odps.sql.unstructured.data.oss.use.https Active HTTPS pour l'accès aux tables externes au niveau de la couche sous-jacente. Voir Créer une table externe OSS. True : activé. False : désactivé. ALL
SQL Session odps.sql.decimal.tostring.trimzero Supprime les zéros finaux après la virgule décimale pour le type DECIMAL. Valeur par défaut : True. True : zéros finaux supprimés. False : zéros finaux conservés. CAST
SQL Session odps.sql.unstructured.tablestore.put.row Appelle l'opération PutRow pour écrire des données dans une table externe Tablestore. Voir PutRow. True : activé. False : désactivé. ALL
SQL Session odps.sql.unstructured.external.max.dop Concurrence maximale des workers accédant à une table externe. Entier positif. Requêtes et écritures de tables externes
SQL Session/Projet odps.sql.unstructured.file.pattern.black.list Ignore les fichiers correspondant à un modèle lors de la lecture de tables externes dans Object Storage Service (OSS) ou Hadoop Distributed File System (HDFS). Utilisez ce paramètre pour ignorer les fichiers _SUCCESS générés par Spark. Exemple au niveau de la session : SET odps.sql.unstructured.file.pattern.black.list=.*_SUCCESS$; .*_SUCCESS$ Requêtes de tables externes
SQL Session odps.meta.exttable.stats.onlinecollect Permet à l'optimiseur de collecter temporairement des statistiques sur les tables externes pendant l'exécution de la requête. Cela aide l'optimiseur à identifier les petites tables, à appliquer Hash Join, à optimiser l'ordre des jointures et à réduire les opérations de shuffle. Valeur par défaut : False. True : activé. False (par défaut) : désactivé. Requêtes de tables externes
SQL Projet odps.sql.allow.fullscan Autorise les analyses complètes de table sur le projet. Ces analyses consomment beaucoup de ressources et réduisent l'efficacité du traitement. Désactivez cette option en production sauf nécessité absolue. True : activé. False : désactivé. SELECT
SQL Projet odps.table.lifecycle Définit l'exigence de cycle de vie pour les tables créées dans le projet. Optional : la clause LIFECYCLE est facultative. Mandatory : la clause LIFECYCLE est obligatoire. Inherit : les tables sans cycle de vie explicite héritent de la valeur de odps.table.lifecycle.value. CREATE TABLE
SQL Projet odps.table.lifecycle.value Cycle de vie par défaut des tables, exprimé en jours. S'applique lorsque odps.table.lifecycle est défini sur Inherit. De 1 à 37 231. Valeur par défaut : 37 231. CREATE TABLE
SQL Projet READ_TABLE_MAX_ROW Nombre maximal de lignes retournées par une instruction SELECT. De 1 à 10 000. Valeur par défaut : 10 000. SELECT
SQL Projet odps.output.field.formatter Règles de masquage dynamique des données appliquées aux résultats des requêtes SQL. Voir Masquage dynamique des données. Règles de masquage personnalisées. SELECT
SQL Projet odps.sql.acid.table.enable Active le mécanisme ACID (atomicité, cohérence, isolation et durabilité). Voir Sémantique ACID. True : activé. False : désactivé. ALL
SQL Session/Projet odps.io.oss.use.vipserver Achemine l'accès OSS via VIPServer au lieu de Server Load Balancer (SLB). VIPServer prend en charge un débit supérieur avec contrôle de flux, mais peut entraîner des échecs de requête. Évaluez les compromis de stabilité avant l'activation. Valeur par défaut : False. True : activé. False (par défaut) : désactivé. Requêtes de tables externes
SQL Session/Projet odps.sql.executionengine.enable.string.to.date.full.format Active la conversion des chaînes de date incluant les heures, minutes et secondes. Valeur par défaut : False. True : activé. False : désactivé. CAST
SQL Session/Projet odps.sql.executionengine.enable.rand.time.seed Contrôle la graine utilisée par la fonction RAND. False (par défaut) : utilise l'ID de l'instance comme graine, garantissant l'idempotence. True : utilise l'heure système, rendant le résultat non idempotent et variable selon les appels. True : activé. False : désactivé. RAND
SQL Session/Projet odps.sql.type.system.odps2 Active l'édition de types de données MaxCompute V2.0. Voir Édition de types de données MaxCompute V2.0. True : activé. False : désactivé. Fonctions supplémentaires MaxCompute V2.0
SQL Session/Projet odps.sql.type.json.enable Active les types de données JSON. Voir Instructions pour l'utilisation des types de données JSON dans MaxCompute. True : activé. False : désactivé. Types de données JSON MaxCompute
SQL Session/Projet odps.sql.hive.compatible Active l'édition de types de données compatible Hive. Nécessaire pour les syntaxes Hive telles que inputRecordReader, outputRecordReader et Serde. Voir Édition de types de données compatible Hive. True : activé. False : désactivé. ALL
SQL Session/Projet odps.sql.metering.value.max Limite supérieure des ressources consommées par une seule instruction SQL. Voir Contrôle de la consommation. ALL
SQL Session/Projet odps.sql.timezone Fuseau horaire du projet MaxCompute. Voir Opérations de configuration du fuseau horaire. ALL
SQL Session/Projet odps.sql.unstructured.oss.commit.mode Active le chargement multipartite OSS lors de l'écriture de données dans des tables externes OSS. Voir Écrire des données dans OSS. True : activé. False : désactivé. INSERT OVERWRITE
SQL Session/Projet odps.sql.groupby.orderby.position.alias Autorise les constantes entières dans GROUP BY et ORDER BY pour référencer les positions de colonnes dans SELECT. Définir ce paramètre sur True pour un projet existant peut rompre la logique d'analyse des données actuelle. Effectuez des tests approfondis avant toute activation au niveau du projet. True : activé. False : désactivé. GROUP BY, ORDER BY, SELECT
SQL Session/Projet odps.ext.oss.orc.native Utilise un lecteur natif Optimized Row Columnar (ORC) pour lire les données de la table. True : activé. False : désactivé. SELECT
SQL Session odps.sql.job.max.time.hours Durée maximale d'une tâche unique, en heures. De 1 à 72. Valeur par défaut : 24. Tâches SQL
Facturation Session odps.task.quota.preference.tag Groupe de quotas attribué à une tâche. La tâche est planifiée vers le groupe de quotas dont le tag correspond. En l'absence de correspondance, le groupe de quotas par défaut du projet est utilisé. S'applique uniquement aux tâches SQL. Exemple : set odps.task.quota.preference.tag = payasyougo; Le nom du tag peut contenir des lettres, des chiffres et des traits de soulignement. Nom du tag d'un groupe de quotas configuré dans MaxCompute Management. Vous ne pouvez configurer le nom du tag que pour les groupes de quotas situés dans la région à laquelle appartient le projet de votre tâche. Le nom du tag peut contenir des lettres, des chiffres et des traits de soulignement (_). ALL
Facturation Session odps.task.wlm.quota Nom du quota utilisé pour exécuter les tâches d'une session. ALL
Sécurité et autorisations Projet odps.forbid.fetch.result.by.bearertoken Contrôle l'affichage des résultats de tâche dans l'onglet Result de LogView. True : les résultats sont masqués. False : les résultats sont affichés. ALL
Sécurité et autorisations Projet LabelSecurity Active le contrôle d'accès basé sur les libellés (LabelSecurity). Voir Contrôle d'accès basé sur les libellés. True : activé. False : désactivé. ALL
Sécurité et autorisations Projet CheckPermissionUsingACL Active le contrôle d'accès basé sur les listes ACL. Voir Autorisations MaxCompute. True : activé. False : désactivé. ALL
Sécurité et autorisations Projet CheckPermissionUsingPolicy Active le contrôle d'accès basé sur les politiques. Voir Contrôle d'accès basé sur les politiques. True : activé. False : désactivé. ALL
Sécurité et autorisations Projet ObjectCreatorHasAccessPermission Accorde aux créateurs d'objets l'accès aux objets qu'ils créent. True : activé. False : désactivé. ALL
Sécurité et autorisations Projet ObjectCreatorHasGrantPermission Permet aux créateurs d'objets d'autoriser d'autres utilisateurs à accéder aux objets qu'ils ont créés. True : activé. False : désactivé. ALL
Sécurité et autorisations Projet ProjectProtection Active la protection des données du projet. Voir Protection des données du projet. True : activé. False : désactivé. ALL
Sécurité et autorisations Projet odps.output.field.formatter Règles de masquage dynamique des données appliquées aux résultats des requêtes SQL. Voir Masquage dynamique des données. Règles de masquage personnalisées. SELECT
Sécurité et autorisations Projet odps.security.ip.whitelist Liste d'autorisation d'adresses IP pour accéder au projet via le réseau d'interconnexion des produits cloud. Séparez les adresses IP par des virgules. Voir Gérer les listes d'autorisation d'adresses IP. Adresses IP séparées par des virgules. ALL
Sécurité et autorisations Projet odps.security.vpc.whitelist Liste d'autorisation d'adresses IP pour accéder au projet via un VPC spécifique. Voir Gérer les listes d'autorisation d'adresses IP. RegionID_VPCID[IP Address] ALL
Type de données Projet odps.sql.decimal.odps2 Active DECIMAL(precision,scale) dans l'édition de types de données MaxCompute V2.0. Voir Édition de types de données MaxCompute V2.0. True : activé. False : désactivé. ALL
Stockage des données Projet odps.timemachine.retention.days Période de rétention des données de sauvegarde, en jours. Voir Sauvegarde et restauration. De 0 à 30. Valeur par défaut : 1. ALL
Métadonnées Projet odps.schema.evolution.enable Active l'évolution de schéma. Valeur par défaut : False. True : activé. False (par défaut) : désactivé. Évolution de schéma

Définir les propriétés du projet

Cette commande définit les propriétés au niveau du projet. Les modifications prennent effet sous 5 minutes ; vérifiez les résultats après ce délai.

Pour définir des propriétés au niveau de la session, utilisez plutôt l'instruction SET. Reportez-vous à la section « SET » dans la rubrique Opérations SET.

Autorisations

Seul le propriétaire du projet ou un utilisateur disposant du rôle de niveau projet Super_Administrator ou Admin peut définir les propriétés au niveau du projet. Voir Attribuer un rôle d'administrateur intégré à un utilisateur.

Syntaxe

setproject <KEY>=<VALUE>;

Paramètres

Paramètre Description
KEY Nom de la propriété.
VALUE Valeur de la propriété. Pour les valeurs valides, voir Consulter les propriétés du projet.

Exemple

Activer les analyses complètes de table pour un projet :

setproject odps.sql.allow.fullscan=true;

Étapes suivantes