

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.

# Configuration des Séances interactives AWS Glue pour Jupyter et Blocs-notes AWS Glue Studio
<a name="interactive-sessions-magics"></a>

## Présentation de Jupyter magics
<a name="w2aac29c18b3"></a>

 Les Jupyter magics sont des commandes qui peuvent être exécutées au début d'une cellule ou en tant que corps cellulaire entier. Les magics commencent par `%` pour les magics linéaires et `%%` pour les magics cellulaires. Les magics linéaires telles que `%region` et `%connections` peuvent être exécutées avec plusieurs magics dans une cellule, ou avec du code inclus à l’intérieur de la cellule, comme dans l'exemple suivant. 

```
%region us-east-2
%connections my_rds_connection
dy_f = glue_context.create_dynamic_frame.from_catalog(database='rds_tables', table_name='sales_table')
```

 Les magics cellulaires doivent utiliser la cellule entière et leur commande peut s'étendre sur plusieurs lignes. Ci-dessous un exemple de `%%sql`. 

```
%%sql
select * from rds_tables.sales_table
```

## Des magics soutenus par les séances interactives AWS Glue pour Jupyter
<a name="interactive-sessions-supported-magics"></a><a name="interactive-sessions-magics2"></a>

 Ci-après les magics que vous pouvez utiliser avec les séances interactives AWS Glue pour les bloc-notes Jupyter. 

 **Sessions Magics** (Séances Magics) 


| Nom | Type | Description | 
| --- | --- | --- | 
|  %help  |  N/A  |  Renvoie une liste de descriptions et de types d'entrée pour toutes les commandes magiques.  | 
| %profile | String | Spécifiez un profil dans votre AWS configuration à utiliser comme fournisseur d'informations d'identification. | 
| %region | String |  Spécifiez le Région AWS ; dans lequel vous souhaitez initialiser une session. Valeurs par défaut de `~/.aws/configure.` Exemple : `%region us-west-1`  | 
| %idle\$1timeout | Int |   Nombre de minutes d'inactivité au bout desquelles une séance expire après l'exécution d'une cellule. La valeur du délai d'inactivité par défaut pour les séances ETL Spark est le délai d'inactivité par défaut, soit 2 880 minutes (48 heures). Pour les autres types de séances, consultez la documentation relative. Exemple : `%idle_timeout 3000`  | 
| %session\$1id | N/A | Retournez l'ID de séance de la séance en cours d'exécution.  | 
| %session\$1id\$1prefix | String |   Définissez une chaîne qui précédera toutes les sessions IDs au format **[session\$1id\$1prefix] - [session\$1id**]. Si aucun ID de séance n'est fourni, un UUID aléatoire est généré. Ce magic n'est pas pris en charge lorsque vous exécutez un bloc-notes Jupyter dans AWS Glue Studio.  Exemple : `%session_id_prefix 001`  | 
| %status |  | Renvoie le statut de la séance AWS Glue actuelle, y compris sa durée, sa configuration et l’exécution de son rôle/utilisateur.  | 
| %stop\$1session  |  | Arrête la séance en cours. | 
| %list\$1sessions |  | Répertorie toutes les séances en cours d'exécution par nom et ID. | 
| %session\$1type | String |  Définit le type de session comme suit : Streaming, ETL ou Ray.  Exemple : `%session_type Streaming`  | 
| %glue\$1version | String |  La version de AWS Glue à utiliser par cette session.  Exemple : `%glue_version 3.0`  | 

 **Magics pour la sélection des types de tâches** 


| Nom | Type | Description | 
| --- | --- | --- | 
| %streaming | String | Modifie le type de séance en Streaming AWS Glue. | 
| %etl | String | Modifie le type de séance en ETL AWS Glue. | 
| %glue\$1ray | String | Modifie le type de session en «  AWS Glue  for Ray ». Découvrez les [sessions interactives Magics soutenues par AWS Glue Ray](https://docs.aws.amazon.com/glue/latest/dg/is-using-ray-configuration).  | 

 **Magics de configuration AWS Glue pour Spark**. 

 Le magic `%%configure` est un dictionnaire au format JSON comprenant tous les paramètres de configuration d'une session. Chaque paramètre peut être spécifié ici ou par magies individuelles. 


| Nom | Type | Description | 
| --- | --- | --- | 
|  %%configure  |  Dictionnaire  |   Spécifiez un dictionnaire au format JSON comprenant tous les paramètres de configuration d'une séance. Chaque paramètre peut être spécifié ici ou par magies individuelles.   Pour obtenir la liste des paramètres et des exemples d’utilisation de `%%configure`, consultez [Arguments du magic cellulaire %%configure](#interactive-sessions-magics-configure-arguments).   | 
| %iam\$1role | String |   Spécifiez un ARN de rôle IAM avec lequel exécuter votre séance. Valeurs par défaut de \$1/.aws/configure.   Exemple : `%iam_role AWSGlueServiceRole`  | 
| %number\$1of\$1workers | Int |  Le nombre d'employés d'un paramètre worker\$1type défini qui sont alloués lorsqu'une tâche est exécutée. `worker_type` doit également être défini. La valeur par défaut `number_of_workers` est 5. Exemple : `%number_of_workers 2`  | 
| %additional\$1python\$1modules | List |  Liste de modules Python supplémentaires séparés par des virgules à inclure dans votre cluster (peut provenir de PyPI ou de S3). Exemple: `%additional_python_modules pandas, numpy`.  | 
| %%tags | String |   Ajoute des balises à une session. Spécifiez les balises entre crochets \$1\$1. Chaque paire de noms de balises est placée entre parenthèses (« ») et séparée par une virgule (,).  <pre>%%tags<br />{"billing":"Data-Platform", "team":"analytics"}<br />                      </pre> Utilisez le magic `%status` pour afficher les balises associées à la session. <pre>%status</pre> <pre>Session ID: <sessionId><br /> Status: READY<br /> Role: <example-role><br /> CreatedOn: 2023-05-26 11:12:17.056000-07:00<br /> GlueVersion: 3.0<br /> Job Type: glueetl<br /> Tags: {'owner':'example-owner', 'team':'analytics', 'billing':'Data-Platform'}<br /> Worker Type: G.4X<br /> Number of Workers: 5<br /> Region: us-west-2<br /> Applying the following default arguments:<br /> --glue_kernel_version 0.38.0<br /> --enable-glue-datacatalog true<br /> Arguments Passed: ['--glue_kernel_version: 0.38.0', '--enable-glue-datacatalog: true']                <br />                </pre>  | 
| %%assume\$1role | Dictionnaire |  Spécifiez un dictionnaire au format JSON ou une chaîne ARN de rôle IAM pour créer une session d'accès intercompte. Exemple avec ARN : <pre>%%assume_role<br />{<br />  'arn:aws:iam::XXXXXXXXXXXX:role/AWSGlueServiceRole'<br />}<br />                </pre> Exemple avec informations d'identification : <pre> %%assume_role<br />{{<br />    "aws_access_key_id" = "XXXXXXXXXXXX",<br />    "aws_secret_access_key" = "XXXXXXXXXXXX",<br />    "aws_session_token" = "XXXXXXXXXXXX"<br />}}</pre>  | 

### Arguments du magic cellulaire %%configure
<a name="interactive-sessions-magics-configure-arguments"></a>

 Le magic `%%configure` est un dictionnaire au format JSON comprenant tous les paramètres de configuration d'une session. Chaque paramètre peut être spécifié ici ou par magies individuelles. Vous trouverez ci-dessous des exemples d'arguments soutenus par le magic cellulaire `%%configure`. Utilisez le préfixe `--` pour les arguments d’exécution spécifiés pour la tâche. Exemple : 

```
%%configure
{
   "--user-jars-first": "true",
   "--enable-glue-datacatalog": "false"
}
```

 Pour plus d’informations sur les paramètres des tâches, consultez [Paramètres du job](aws-glue-programming-etl-glue-arguments.md). 

**Configuration de session**


| Paramètre | Type | Description | 
| --- | --- | --- | 
| max\$1retries | Int | Nombre maximum de tentatives de cette tâche en cas d'échec. <pre>%%configure<br />{<br />  "max_retries": "0"<br />}                      <br />                          </pre> | 
| max\$1concurrent\$1runs | Int | Nombre maximal d'exécutions simultanées autorisées pour une tâche. Exemple : <pre>%%configure<br />{<br />  "max_concurrent_runs": "3"<br />}</pre> | 

**Paramètres de session**


| Paramètre | Type | Description | 
| --- | --- | --- | 
| --enable-spark-ui | Booléen | Activez l'interface utilisateur Spark pour surveiller et déboguer les tâches ETL AWS Glue. <pre>%%configure<br />{<br />  "--enable-spark-ui": "true"<br />}</pre> | 
| --spark-event-logs-path | String | Spécifie un chemin d'accès Amazon S3. Lorsque vous utilisez la fonctionnalité de surveillance de l'interface utilisateur Spark. Exemple : <pre>%%configure<br />{<br />  "--spark-event-logs-path": "s3://path/to/event/logs/"<br />}                           <br />                          </pre> | 
| --script\$1location | String | Spécifie le chemin d'accès S3 à un script qui exécute une tâche. Exemple :<pre>%%configure <br />{<br />  "script_location": "s3://new-folder-here"<br />}                            <br />                          </pre> | 
| --SECURITY\$1CONFIGURATION | String | Le nom d'une configuration AWS Glue de sécurité Exemple : <pre>%%configure<br />{<br />    "--security_configuration": {<br />"encryption_type": "kms",<br />"kms_key_id": "YOUR_KMS_KEY_ARN"<br />}<br />}<br />                  </pre>  | 
| --job-language | String | Langage de programmation des scripts. Accepte la valeur « scala » ou « python ». La valeur par défaut est « python ». Exemple : <pre>%%configure <br />{<br />  "--job-language": "scala"<br />}                            <br />                  </pre>  | 
| --class | String | La classe Scala qui sert de point d'entrée à votre script Scala. La valeur par défaut est nulle. Exemple : <pre>%%configure <br />{<br />  "--class": "className"<br />}                            <br />                  </pre>  | 
| --user-jars-first | Booléen | Donne la priorité aux fichiers JAR supplémentaires du client dans le chemin de classe. La valeur par défaut est nulle. Exemple : <pre>%%configure <br />{<br />  "--user-jars-first": "true"<br />}                            <br />                  </pre>  | 
| --use-postgres-driver | Booléen | Priorise le pilote JDBC Postgres dans le chemin de classe afin d'éviter tout conflit avec le pilote JDBC. Amazon Redshift La valeur par défaut est nulle. Exemple : <pre>%%configure <br />{<br />  "--use-postgres-driver": "true"<br />}                            <br />                  </pre>  | 
| --extra-files | List(string) | Les chemins Amazon S3 vers des fichiers supplémentaires (par exemple, des fichiers de configuration) que AWS Glue copie vers le répertoire de travail de votre script avant de l'exécuter. Exemple : <pre>%%configure <br />{<br />  "--extra-files": "s3://path/to/additional/files/"<br />}                            <br />                  </pre>  | 
| --job-bookmark-option | String | Contrôle le comportement d'un signet de tâche. Accepte les valeurs « job-bookmark-enable », « job-bookmark-disable » ou « job-bookmark-pause ». La valeur par défaut est job-bookmark-disable « ». Exemple : <pre>%%configure<br />{<br />  "--job-bookmark-option": "job-bookmark-enable"<br />}                            <br />                  </pre>  | 
| --TempDir | String | Spécifie un chemin Amazon S3 vers un compartiment qui peut être utilisé comme répertoire temporaire pour la tâche. La valeur par défaut est nulle. Exemple : <pre>%%configure <br />{<br />  "--TempDir": "s3://path/to/temp/dir"<br />}                            <br />                  </pre>  | 
| --enable-s3-parquet-optimized-committer | Booléen | Active le validateur EMRFS optimisé pour Amazon S3 pour l'écriture de données Parquet dans Amazon S3. La valeur par défaut est « true ». Exemple : <pre>%%configure <br />{<br />  "--enable-s3-parquet-optimized-committer": "false"<br />}                            <br />                  </pre>  | 
| --enable-rename-algorithm-v2 | Booléen | Définit la version de l'algorithme de renommage EMRFS sur la version 2. La valeur par défaut est « true ». Exemple : <pre>%%configure <br />{<br />  "--enable-rename-algorithm-v2": "true"<br />}                            <br />                  </pre>  | 
| --enable-glue-datacatalog | Booléen | Vous permet d'utiliser le catalogue de données AWS Glue en tant que métastore Apache Hive Spark. Exemple : <pre>%%configure <br />{<br />  "--enable-glue-datacatalog": "true"<br />}                            <br />                  </pre>  | 
| --enable-metrics | Booléen | Permet de collecter des métriques de profilage de tâche pour l'exécution de la tâche. La valeur par défaut est « false ». Exemple : <pre>%%configure <br />{<br />  "--enable-metrics": "true"<br />}                            <br />                  </pre>  | 
| --enable-continuous-cloudwatch-log | Booléen | Active la journalisation continue en temps réel des tâches AWS Glue. La valeur par défaut est « false ». Exemple : <pre>%%configure <br />{<br />  "--enable-continuous-cloudwatch-log": "true"<br />}                            <br />                  </pre>  | 
| --enable-continuous-log-filter | Booléen | Spécifie un filtre standard ou aucun filtre lorsque vous créez ou modifiez une tâche activée pour la journalisation continue. La valeur par défaut est « true ». Exemple : <pre>%%configure <br />{<br />  "--enable-continuous-log-filter": "true"<br />}                            <br />                  </pre>  | 
| --continuous-log-stream-prefix | String | Spécifie un préfixe de flux de Amazon CloudWatch journal personnalisé pour une tâche activée pour la journalisation continue. La valeur par défaut est nulle. Exemple : <pre>%%configure <br />{<br />  "--continuous-log-stream-prefix": "prefix"<br />}                            <br />                  </pre>  | 
| --continuous-log-conversionPattern | String | Spécifie un modèle de journal de conversion personnalisé pour une tâche activée pour la journalisation en continu. La valeur par défaut est nulle. Exemple : <pre>%%configure <br />{<br />  "--continuous-log-conversionPattern": "pattern"<br />}                      <br />                  </pre>  | 
| --conf | String | Contrôle les paramètres de configuration de Spark. Elle est destinée aux cas d'utilisation avancés. Utilisez --conf avant chaque paramètre. Exemple : <pre>%%configure<br />{<br />    "--conf": "spark.hadoop.hive.metastore.glue.catalogid=123456789012 --conf hive.metastore.client.factory.class=com.amazonaws.glue.catalog.metastore.AWSGlueDataCatalogHiveClientFactory --conf hive.metastore.schema.verification=false"<br />}       <br />        </pre>  | 
| timeout | Int | Détermine la durée maximale pendant laquelle la session Spark doit attendre qu’une instruction n’expire avant d’y mettre fin. <pre>%%configure <br />{<br />  "timeout": "30"<br />}</pre>  | 
| autoscaling | Booléen | Détermine s’il faut ou non utiliser l’autoscaling. <pre>%%configure <br />{<br />  "––enable-auto-scaling": "true"<br />}</pre>  | 

### Magics de tâches Spark (ETL et streaming)
<a name="interactive-sessions-magics-spark-jobs"></a>


| Nom | Type | Description | 
| --- | --- | --- | 
| %worker\$1type | String | Standard, G.1X, G.2X, G.4X, G.8X, G.12X, G.16X, R.1X, R.2X, R.4X ou R.8X. number\$1of\$1workers doit également être défini. Le paramètre worker\$1type par défaut est G.1X. | 
| %connections | List |  Spécifiez une liste de connexions séparées par des virgules à utiliser dans la séance.   Exemple :  <pre>%connections my_rds_connection<br />                    dy_f = glue_context.create_dynamic_frame.from_catalog(database='rds_tables', table_name='sales_table')</pre>  | 
| %extra\$1py\$1files | List | Liste de fichiers Python supplémentaires séparée par des virgules provenant d'Amazon S3. | 
| %extra\$1jars | List | Liste de pots supplémentaires séparés par des virgules à inclure dans le cluster. | 
| %spark\$1conf | String | Spécifiez des configurations Spark personnalisées pour votre session. Par exemple, %spark\$1conf spark.serializer=org.apache.spark.serializer.KryoSerializer. | 

### Magics pour les tâches Ray
<a name="interactive-sessions-magics-ray-jobs"></a>


| Nom | Type | Description | 
| --- | --- | --- | 
| %min\$1workers | Int |  Le nombre minimum de travailleurs alloués à une tâche Ray. Par défaut : 1.  Exemple : `%min_workers 2`   | 
| %object\$1memory\$1head | Int | Le pourcentage de mémoire disponible sur le nœud principal de l'instance après un démarrage à chaud. Minimum : 0. Maximum : 100. Exemple : `%object_memory_head 100`  | 
| %object\$1memory\$1worker | Int | Le pourcentage de mémoire disponible sur le composant master de l'instance après un démarrage à chaud. Minimum : 0. Maximum : 100. Exemple : `%object_memory_worker 100` | 

### Action Magics (Action Magics)
<a name="interactive-sessions-magics-action"></a>


| Nom | Type | Description | 
| --- | --- | --- | 
| %%sql | String |   Exécutez le code SQL. Toutes les lignes après magic `%%sql` initial comme faisant partie du code SQL.   Exemple : `%%sql select * from rds_tables.sales_table`  | 
| %matplot | Illustration Matplotlib |  Visualisez vos données à l'aide de la bibliothèque Matplotlib. Exemple : <pre>import matplotlib.pyplot as plt<br /><br /># Set X-axis and Y-axis values<br />x = [5, 2, 8, 4, 9]<br />y = [10, 4, 8, 5, 2]<br />  <br /># Create a bar chart <br />plt.bar(x, y)<br />  <br /># Show the plot<br />%matplot plt      <br />                </pre>  | 
| %plotly | Illustration Plotly |  Visualisez vos données à l'aide de la bibliothèque Plotly. Exemple : <pre>import plotly.express as px<br />                  <br />#Create a graphical figure<br />fig = px.line(x=["a","b","c"], y=[1,3,2], title="sample figure")<br /><br />#Show the figure<br />%plotly fig</pre>  | 

## Désignation des séances
<a name="interactive-sessions-naming-sessions"></a>

 AWS Glueles sessions interactives sont AWS des ressources qui nécessitent un nom. Les noms doivent être uniques pour chaque session et peuvent être restreints par vos administrateurs IAM. Pour de plus amples informations, veuillez consulter [Séances interactives avec IAM](glue-is-security.md). Le noyau Jupyter génère automatiquement des noms de session uniques pour vous. Toutefois, les séances peuvent être nommées manuellement de deux manières : 

1.  À l'aide du fichier de AWS Command Line Interface configuration situé à l'adresse`~.aws/config`. Voir [Configuration de la AWS configuration avec le AWS Command Line Interface](https://docs.aws.amazon.com/config/latest/developerguide/gs-cli.html). 

1.  Utilisation des magics `%session_id_prefix`. Consultez [Des magics soutenus par les séances interactives AWS Glue pour Jupyter](#interactive-sessions-supported-magics). 

 Un nom de séance est généré comme suit : 
+ Lorsque le préfixe et l’identifiant de session sont fournis : le nom de la séance sera \$1prefix\$1-\$1UUID\$1.
+ Lorsque rien n'est fourni : le nom de la séance sera \$1UUID\$1.

Le préfixe des noms de session vous permet de reconnaître votre session lorsque vous la listez dans la console AWS CLI or.

## Spécification d'un rôle IAM pour les séances interactives
<a name="iam-role-interactive-sessions"></a>

 Vous devez spécifier un rôle AWS Identity and Access Management (IAM) à utiliser avec le code AWS Glue ETL que vous exécutez lors de sessions interactives. 

 Le rôle requiert les mêmes autorisations IAM que celles requises pour exécuter les tâches AWS Glue. Voir [Création d'un rôle IAM pour AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/create-an-iam-role.html) pour plus d'informations sur la création d'un rôle pour les tâches AWS Glue et les séances interactives. 

 Les rôles IAM peuvent être spécifiés de deux manières : 
+  À l'aide du fichier de AWS Command Line Interface configuration situé à l'`~.aws/config`adresse (recommandé). Pour de plus amples informations, veuillez consulter [Configuration de séances avec \$1/.aws/config](https://docs.aws.amazon.com/glue/latest/ug/interactive-sessions-magics.html#interactive-sessions-named-profiles) (langue Français non garantie). 
**Note**  
 Lorsque magic de `%profile` est utilisée, la configuration pour `glue_iam_role` de ce profil est respectée. 
+  Utilisation du magic %iam\$1role. Pour plus d'informations, consultez [Des magics soutenus par les séances interactives AWS Glue pour Jupyter](#interactive-sessions-supported-magics). 

## Configuration des séances avec des profils nommés
<a name="interactive-sessions-named-profiles"></a>

 AWS Glueles sessions interactives utilisent les mêmes informations d'identification que le AWS Command Line Interface ou boto3, et les sessions interactives respectent et fonctionnent avec des profils nommés tels que ceux AWS CLI trouvés dans `~/.aws/config` (Linux et macOS) ou `%USERPROFILE%\.aws\config` (Windows). Pour de plus amples informations, consultez [Using named profiles](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-using-profiles). 

 Les séances interactives tirent parti des profils nommés en permettant au préfixe de fonction du service et aux ID de séance AWS Glue d'être spécifiés dans un profil. Pour configurer un rôle de profil, ajoutez une ligne pour la `iam_role` clé and/or `session_id_prefix ` de votre profil nommé, comme indiqué ci-dessous. Le `session_id_prefix` ne nécessite pas de guillemets. Par exemple, si vous souhaitez ajouter un ` session_id_prefix`, saisissez la valeur du `session_id_prefix=myprefix`. 

```
[default]
region=us-east-1
aws_access_key_id=AKIAIOSFODNN7EXAMPLE 
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
glue_iam_role=arn:aws:iam::<AccountID>:role/<GlueServiceRole> 
session_id_prefix=<prefix_for_session_names>

[user1] 
region=eu-west-1
aws_access_key_id=AKIAI44QH8DHBEXAMPLE 
aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY
glue_iam_role=arn:aws:iam::<AccountID>:role/<GlueServiceRoleUser1> 
session_id_prefix=<prefix_for_session_names_for_user1>
```

 Si vous disposez d'une méthode personnalisée pour générer des informations d'identification, vous pouvez également configurer votre profil pour utiliser le paramètre `credential_process` dans votre fichier `~/.aws/config`. Par exemple : 

```
[profile developer]
region=us-east-1
credential_process = "/Users/Dave/generate_my_credentials.sh" --username helen
```

 Vous trouverez plus de détails sur la source d'approvisionnement des informations d'identification via le paramètre `credential_process` ici : [Source d'approvisionnement des informations d'identification avec un processus externe](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sourcing-external.html). 

 Si une région ou `iam_role` ne sont pas définis dans le profil que vous utilisez, vous devez les spécifier à l'aide des magics `%region` et `%iam_role` dans la première cellule que vous exécutez. 