---
title: "Connecter PySpark avec le SDK Python de la Data Platform"
description: "N'hésitez pas à consulter le code d'exemple pour les cas d'usage courants. Lorsque vous créez une action Custom PySpark, deux choses sont effectuées par la Data Platform"
url: https://docs.ovhcloud.com/fr/guides/public-cloud/data-platform/developers-python-sdk-connect-spark
lang: fr
lastUpdated: 2026-09-14
---
> For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt.

# Connecter PySpark avec le SDK Python de la Data Platform

## Objectif

:::info
Dans une [action Custom PySpark](https://docs.ovhcloud.com/fr/guides/public-cloud/data-platform/dpe-actions-custom-pyspark.md), vous pouvez utiliser les méthodes compatibles Spark de l'objet Connector. Ces méthodes sont disponibles **uniquement dans les actions Custom PySpark** et varient selon le type de source auquel vous êtes connecté.
:::

N'hésitez pas à consulter le [code d'exemple](https://docs.ovhcloud.com/fr/guides/public-cloud/data-platform/developers-python-sdk-quick-start-spark.md) pour les cas d'usage courants.

## Le module connect avec PySpark

Lorsque vous créez une [action Custom PySpark](https://docs.ovhcloud.com/fr/guides/public-cloud/data-platform/dpe-actions-custom-pyspark.md), deux choses sont effectuées par la Data Platform :

- _SparkContext_ est créé avant l'appel du script.
- _SparkContext.stop()_ est appelé après le script.

Vous pouvez donc simplement accéder aux fonctionnalités de Spark avec :

```python
SparkContext.getOrCreate()
```

Pour accéder aux données stockées au sein de la Data Platform, vous devez d'abord instancier un [objet Connector avec la fonction connect](https://docs.ovhcloud.com/fr/guides/public-cloud/data-platform/developers-python-sdk-reference.md#la-fonction-connect). Vous pouvez ensuite utiliser les **méthodes compatibles Spark de l'objet Connector** pour interagir avec les données connectées.

Par exemple, la méthode pour obtenir un objet Spark Dataframe est **connnector.extract\_dataframe()**. Le code d'exemple ci-dessous se connecte directement à une source puis utilise cette méthode pour obtenir l'objet Spark :

```python
from forepaas.dwh import connect

cn_source = connect("dwh/file_upload_source/chicago_calendar_full.csv")

# La fonction extract_dataframe du connecteur compatible Spark retourne un Spark DataFrame
spark_df = cn_source.extract_dataframe()
```

:::info
Notez que tous les connecteurs de la Data Platform ne sont pas compatibles avec PySpark. Certains connecteurs compatibles sont : Snowflake, PostgreSQL, MySQL, Amazon S31
, File-Upload et Data Platform Bucket mais cette liste évolue constamment.
:::
## Méthodes du Connector compatibles Spark

### get\_spark\_options()

Retourne les options Spark pour se connecter à une base de données.

_Non disponible avec les sources de type Protocol (Buckets, File Upload, Amazon S3, etc)._

**Sortie**

| Type | Description                                           | Exemple          |
| :--: | :---------------------------------------------------- | :--------------- |
| Dict | SparkOptions pour se connecter à une base de données. | Voir ci-dessous. |

```python
{
            "sfAccount": ...,
            "sfURL": ...,
            "sfUser": ...,
            "sfSchema": ...,
            "sfDatabase": ...,
            "sfTimezone": ...,
            "sfWarehouse": ...,
            "preactions": ...,
}
```

### get\_spark\_context()

Retourne le SparkContext actuel.

**Sortie**

|         Type         | Description          | Exemple |
| :------------------: | :------------------- | :------ |
| pyspark.SparkContext | SparkContext actuel. | -       |

### get\_spark\_session()

Retourne la session spark actuelle, configurée avec différents paramètres lors de l'utilisation d'un bucket / file-upload de la Data Platform.

_Disponible uniquement avec les sources de type Protocol (Buckets, File Upload, Amazon S3, etc)._

**Sortie**

|           Type           | Description             | Exemple |
| :----------------------: | :---------------------- | :------ |
| pyspark.sql.SparkSession | Session Spark actuelle. | -       |

### get\_spark\_url(path, filename, bucket=None)

Retourne l'url du fichier vers le chemin donné de l'objet dans le stockage objet. path doit être un chemin absolu dans le stockage objet, et si bucket n'est pas défini, celui de la configuration utilisateur est utilisé

_Disponible uniquement avec les sources de type Protocol (Buckets, File Upload, Amazon S3, etc)._

**Paramètres d'entrée**

| Nom                | Type | Description                                      | Exemple |
| :----------------- | :--: | :----------------------------------------------- | :------ |
| path               |  str | Chemin absolu vers le fichier au sein du bucket. | -       |
| filename           |  str | Nom du fichier avec son extension.               | -       |
| bucket (optionnel) |  str | Bucket dans le stockage objet.                   | -       |

**Sortie**

| Type | Description           | Exemple                                       |
| :--: | :-------------------- | :-------------------------------------------- |
|  str | URL Spark du fichier. | `s3a://bucket_name/path/chicago_calendar.csv` |

### insert\_dataframe(table, dataframe)

Insère un Spark DataFrame dans la source connectée.

_Disponible avec les bases de données et certaines sources de type Protocol (Buckets, Amazon S3, Azure Blob Storage)._
Pour plus de détails, consultez les [cas d'usage 4 et 5](https://docs.ovhcloud.com/fr/guides/public-cloud/data-platform/developers-python-sdk-quick-start-spark.md).

**Paramètres d'entrée**

| Nom       |          Type         | Description                                | Exemple       |
| :-------- | :-------------------: | :----------------------------------------- | :------------ |
| table     |          str          | Nom de la table dans la base de données.   | `my_s3_table` |
| dataframe | pyspark.sql.DataFrame | DataFrame contenant les données à insérer. | -             |

### extract\_dataframe(params=\{})

Extrait un SparkDataframe depuis un fichier. Les options d'extraction du fichier peuvent être définies via params ou dans table.parameters

**Paramètres d'entrée**

| Nom    | Type | Description                                                                                                                               | Exemple          |
| :----- | :--: | :---------------------------------------------------------------------------------------------------------------------------------------- | :--------------- |
| params | Dict | Dict contenant une structure de requête SQL à exécuter. Un dictionnaire vide par défaut, entraînant la récupération de toutes les lignes. | Dict vide : `{}` |

Exemple détaillé :

```python
 params = {
                "scale": ["attribute_1", "attribute_2"],
                "joins": [{
                    "type": "INNER",
                    "table": "table_1",
                    "condition": "table_1.attribute = table_2.attribute"
                }],
                "schema": {
                    "attribute_dest": "attribute_source"
                }
            }
```

**Sortie**

|          Type         | Description                             | Exemple |
| :-------------------: | :-------------------------------------- | :------ |
| pyspark.sql.DataFrame | DataFrame avec les données des sources. | -       |

## Aller plus loin

Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur [ce lien](https://www.ovhcloud.com/fr/professional-services/) pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.

Posez vos questions, faites-nous part de vos commentaires et interagissez directement avec l’équipe qui développe la Data Platform sur le [canal Discord](https://discord.gg/ovhcloud) dédié.

Si vous avez besoin d'une assistance concernant vos services OVHcloud, créez une demande depuis notre [centre d'aide](https://help.ovhcloud.com/csm?id=csm_get_help).

Rejoignez notre [communauté d'utilisateurs](https://community.ovhcloud.com/).

1
 : S3 est une marque déposée appartenant à Amazon Technologies, Inc. Les services de OVHcloud ne sont pas sponsorisés, approuvés, ou affiliés de quelque manière que ce soit.