Gestion des pools de calcul

Un pool de calcul est une collection d’un ou plusieurs nœuds de machines virtuelles (VM) sur lesquels Snowflake exécute vos tâches et services Snowpark Container Services.

Pour plus d’informations sur les pools de calcul, voir Snowpark Container Services : utilisation des pools de calcul.

Cette rubrique explique comment effectuer les tâches suivantes avec les services :

Pour les opérations courantes, telles que l’affichage sous forme de liste ou la suppression, Snowflake CLI utilise les commandes snow object décrites dans Gestion des objets Snowflake.

Créer un pool de calcul

Pour créer un pool de calcul nommé « pool_1 » composé de deux CPUs avec 4 GB de mémoire, entrez une commande spcs pool create similaire à la suivante :

snow spcs compute-pool create "pool_1" --min-nodes 2 --max-nodes 2 --family "CPU_X64_XS"
Copy

Pour plus d’informations sur les familles d’instances, consultez la commande SQL CREATE COMPUTE POOL.

Créer un pool de calcul à partir d’une définition de projet

Vous pouvez créer un pool de calcul à partir d’un fichier de définition de projet snowflake.yml, puis en exécutant la commande snow spcs compute-pool deploy.

Vous trouverez ci-dessous un exemple de fichier de définition de projet snowflake.yml :

definition_version: 2
entities:
  my_compute_pool:
    type: compute-pool
    identifier:
      name: my_compute_pool
    min_nodes: 1
    max_nodes: 2
    instance_family: CPU_X64_XS
    auto_resume: true
    initially_suspended: true
    auto_suspend_seconds: 60
    comment: "My compute pool"
    tags:
      - name: my_tag
        value: tag_value
Copy

La table suivante décrit les propriétés d’une définition de projet de pool de calcul.

Propriétés de définition du projet de pool de calcul

Propriété

Définition

type

required, string

Doit être compute-pool.

identifier

optional, string

Identificateur Snowflake de l’entité. La valeur peut avoir les formes suivantes :

  • Texte d’identificateur de chaîne

    identifier: my-compute-pool
    
    Copy

    Les identificateurs entre guillemets et sans guillemets sont pris en charge. Pour utiliser des identificateurs entre guillemets, incluez les guillemets dans la valeur YAML (par exemple, "Mon pool de calcul").

  • Objet

    identifier:
      name: my-compute-pool
      schema: my-schema # optional
      database: my-db # optional
    
    Copy

    Note

    Une erreur se produit si vous spécifiez un schéma :codenowrap: `` ou une base de données :codenowrap:`` et que vous utilisez un nom entièrement qualifié dans la propriété name (tel que mydb.schema1.my-app).

instance_family

required, string

Nom de la famille d’instances. Pour obtenir la liste des familles d’instances disponibles, voir le paramètre CREATE COMPUTE POOL INSTANCE_FAMILY.

min_nodes

optional, string

Nombre minimum de nœuds pour le pool de calcul. Cette valeur doit être supérieure à 0.

Par défaut : 1

max_nodes

optional, int

Nombre maximum de nœuds pour le pool de calcul.

auto_resume

optionnel, booléen

Détermine s’il faut reprendre automatiquement un pool de calcul lorsqu’un service ou une tâche lui est soumis.

Par défaut : True

initially_suspended

optionnel, booléen

Si le pool de calcul est créé initialement à l’état Suspendu. Si true, Snowflake ne met à disposition aucun nœud requis pour le pool de calcul au moment de la création du pool de calcul.

Par défaut : False

auto_suspend_seconds

optional, int

Nombre de secondes d’inactivité après lesquelles vous souhaitez que Snowflake suspende automatiquement le pool de calcul.

Par défaut : 3600

commentaire

optional, string

Commentaires à associer au pool de calcul

tags

optional, Tag sequence

Noms et valeurs des balises pour le pool de calcul. Pour plus d’informations, voir Quota de balise pour les objets

Pour créer et déployer le pool de calcul dans une zone de préparation, procédez comme suit :

  1. Définissez votre répertoire actuel pour le répertoire contenant le fichier de définition du projet.

  2. Exécutez une commande snow spcs compute-pool deploy similaire à la suivante :

    snow spcs compute-pool deploy
    
    Copy
    +---------------------------------------------------------------------+
    | key    | value                                                      |
    |--------+------------------------------------------------------------|
    | status | Compute pool MY_COMPUTE_POOL successfully created.         |
    +---------------------------------------------------------------------+
    

Suspendre et reprendre un pool de calcul

Note

Le rôle actuel doit avoir le privilège OPERATE sur le pool de calcul pour le suspendre ou le reprendre.

Pour suspendre un pool de calcul, entrez une commande similaire à la suivante :

snow spcs compute-pool suspend tutorial_compute_pool
Copy
+-------------------------------------------+
| key    | value                            |
|--------+----------------------------------|
| status | Statement executed successfully. |
+-------------------------------------------+

Pour reprendre un pool de calcul suspendu, entrez une commande similaire à la suivante :

snow spcs compute-pool resume tutorial_compute_pool
Copy
+-------------------------------------------+
| key    | value                            |
|--------+----------------------------------|
| status | Statement executed successfully. |
+-------------------------------------------+

Définir et annuler la définition des propriétés ou des paramètres d’un pool de calcul

Note

Le rôle actuel doit avoir le privilège MODIFY sur le pool de calcul pour définir les propriétés.

Pour définir une propriété ou un paramètre, entrez une commande similaire à la suivante :

snow spcs compute-pool set tutorial_compute_pool --min-nodes 2 --max-nodes 4
Copy
+-------------------------------------------+
| key    | value                            |
|--------+----------------------------------|
| status | Statement executed successfully. |
+-------------------------------------------+

Pour rétablir la valeur par défaut d’une propriété ou d’un paramètre, entrez une commande similaire à la suivante :

snow spcs compute-pool unset tutorial_compute_pool --auto-resume
Copy
+-------------------------------------------+
| key    | value                            |
|--------+----------------------------------|
| status | Statement executed successfully. |
+-------------------------------------------+

Arrêter tous les services d’un pool de calcul

L’arrêt d’un pool de calcul supprime tous les services fonctionnant sur le pool de calcul, mais n’arrête pas le pool de calcul lui-même.

Pour arrêter un pool de calcul, entrez une commande spcs compute-pool stop-all similaire à la suivante :

snow spcs compute-pool stop-all "pool_1"
Copy