

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.

# Connexion à Google BigQuery en AWS Glue Studio
<a name="connecting-to-data-bigquery"></a>

**Note**  
  Vous pouvez utiliser Spark AWS Glue pour lire et écrire dans des tables dans Google BigQuery dans les versions AWS Glue 4.0 et ultérieures. Pour configurer Google BigQuery avec des AWS Glue offres d'emploi par programmation, voir [BigQuery connexions](aws-glue-programming-etl-connect-bigquery-home.md).  

 AWS Glue Studiofournit une interface visuelle pour se connecter BigQuery, créer des tâches d'intégration de données et les exécuter sur le runtime Spark AWS Glue Studio sans serveur. 

 Lors de la création d'une connexion à Google BigQuery In AWS Glue Studio, une connexion unifiée est créée. Pour de plus amples informations, veuillez consulter [Considérations](using-connectors-unified-connections.md#using-connectors-unified-connections-considerations). 

 Au lieu de créer un secret avec les informations d'identification dans un format spécifique`{"credentials": "base64 encoded JSON"}`, désormais avec une connexion unifiée à Google BigQuery, vous pouvez créer un secret qui inclut directement le JSON de Google : BigQuery. `{"type": "service-account", ...}` 

**Topics**
+ [Création d'une BigQuery connexion](creating-bigquery-connection.md)
+ [Création d'un nœud BigQuery source](creating-bigquery-source-node.md)
+ [Création d'un nœud BigQuery cible](creating-bigquery-target-node.md)
+ [Options avancées](#creating-bigquery-connection-advanced-options)

# Création d'une BigQuery connexion
<a name="creating-bigquery-connection"></a>

Pour vous connecter à Google BigQuery depuis AWS Glue, vous devez créer et stocker vos informations d'identification Google Cloud Platform dans un AWS Secrets Manager secret, puis associer ce secret à une BigQuery AWS Glue connexion Google.

**Pour configurer une connexion à BigQuery :**

1. Dans Google Cloud Platform, créez et identifiez les ressources pertinentes :
   + Créez ou identifiez un projet GCP contenant des BigQuery tables auxquelles vous souhaitez vous connecter.
   + Activez l' BigQuery API. Pour plus d'informations, voir [Utiliser l'API BigQuery Storage Read pour lire les données des tables](https://cloud.google.com/bigquery/docs/reference/storage/#enabling_the_api).

1. Dans Google Cloud Platform, créez et exportez les informations d’identification du compte de service :

   Vous pouvez utiliser l'assistant BigQuery d'identification pour accélérer cette étape : [créer des informations d'identification](https://console.cloud.google.com/apis/credentials/wizard?api=bigquery.googleapis.com).

   Pour créer un compte de service dans GCP, suivez le didacticiel disponible dans la section [Créer des comptes de service](https://cloud.google.com/iam/docs/service-accounts-create).
   + Lorsque vous sélectionnez **un projet**, sélectionnez le projet contenant votre BigQuery tableau.
   + Lorsque vous sélectionnez des rôles GCP IAM pour votre compte de service, ajoutez ou créez un rôle qui accordera les autorisations appropriées pour exécuter des BigQuery tâches de lecture, d'écriture ou de création BigQuery de tables.

   Pour créer des informations d’identification pour votre compte de service, suivez le didacticiel disponible dans la section [Créer une clé de compte de service](https://cloud.google.com/iam/docs/keys-create-delete#creating).
   + Lorsque vous sélectionnez le type de clé, sélectionnez **JSON**.

   Vous devriez maintenant avoir téléchargé un fichier JSON contenant les informations d’identification de votre compte de service. Il doit ressembler à l’exemple ci-dessous.

   ```
   {
     "type": "service_account",
     "project_id": "*****",
     "private_key_id": "*****",
     "private_key": "*****",
     "client_email": "*****",
     "client_id": "*****",
     "auth_uri": "https://accounts.google.com/o/oauth2/auth",
     "token_uri": "https://oauth2.googleapis.com/token",
     "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
     "client_x509_cert_url": "*****",
     "universe_domain": "googleapis.com"
   }
   ```

1. Dans AWS Secrets Manager, créez un secret à l'aide du fichier d'informations d'identification que vous avez téléchargé. Vous pouvez choisir l’onglet **Texte brut** et coller le contenu du fichier au format JSON. Pour créer un secret dans Secrets Manager, suivez le didacticiel disponible dans la [section Créer un AWS Secrets Manager secret](https://docs.aws.amazon.com//secretsmanager/latest/userguide/create_secret.html) dans la AWS Secrets Manager documentation. Après avoir créé le secret, conservez le nom du secret *secretName* pour l'étape suivante. 

1. Dans le catalogue de AWS Glue données, créez une connexion en suivant les étapes décrites dans[https://docs.aws.amazon.com/glue/latest/dg/console-connections.html](https://docs.aws.amazon.com/glue/latest/dg/console-connections.html). Après avoir créé la connexion, conservez le nom de la connexion pour l'étape suivante. *connectionName* 
   + Lorsque vous sélectionnez un **type de connexion**, sélectionnez Google BigQuery.
   + Lorsque vous sélectionnez un **AWS secret**, fournissez*secretName*.

1. Accordez au rôle IAM associé à votre AWS Glue travail l'autorisation de lire*secretName*.

1. Dans la configuration de votre AWS Glue tâche, fournissez *connectionName* une **connexion réseau supplémentaire**.

# Création d'un nœud BigQuery source
<a name="creating-bigquery-source-node"></a>

## Prérequis
<a name="creating-bigquery-source-node-prerequisites"></a>
+ Une connexion BigQuery de type AWS Glue Data Catalog
+ Un AWS Secrets Manager secret pour vos BigQuery informations d'identification Google, utilisées par la connexion.
+ Les autorisations appropriées sur votre tâche pour lire le secret utilisé par la connexion.
+ Le nom et le jeu de données de la table et du projet Google Cloud correspondant que vous souhaitez lire.

## Ajouter une source BigQuery de données
<a name="creating-bigquery-source-node-add"></a>

**Pour ajouter une **source de données — BigQuery** nœud :**

1.  Choisissez la connexion pour votre source BigQuery de données. Puisque vous l'avez créé, il devrait être disponible dans le menu déroulant. Si vous devez créer une connexion, choisissez **Créer une BigQuery connexion**. Pour en savoir plus, consultez [ Overview of using connectors and connections ](https://docs.aws.amazon.com/glue/latest/ug/connectors-chapter.html#using-connectors-overview). 

    Une fois que vous avez choisi une connexion, vous pouvez afficher ses propriétés en cliquant sur **Afficher les propriétés**. 

1. Identifiez les BigQuery données que vous souhaitez lire, puis choisissez une option **BigQuery Source**
   + Choisissez une seule table : cela vous permet d'extraire toutes les données d'une table.
   + Saisissez une requête personnalisée : cela vous permet de personnaliser les données extraites en fournissant une requête.

1.  Décrivez les données que vous souhaitez lire.

   **(Obligatoire) **Définissez le **Projet parent** sur le projet contenant votre table, ou sur un projet parent de facturation, le cas échéant.

   Si vous avez choisi une seule table, **attribuez à Table** le nom d'une BigQuery table Google au format suivant : `[dataset].[table]` 

   Si vous avez choisi une requête, indiquez-la à **Requête**. Dans votre requête, faites référence aux tables avec leur nom de table complet, au format suivant : `[project].[dataset].[tableName]`.

1.  Fournir des BigQuery propriétés 

   Si vous avez choisi une seule table, vous n'avez pas besoin de fournir de propriétés supplémentaires.

   Si vous avez choisi une requête, vous devez fournir les ** BigQuery propriétés Google personnalisées** suivantes :
   + Définissez `viewsEnabled` sur true.
   + Définissez `materializationDataset` sur un jeu de données. Le principal GCP authentifié par les informations d'identification fournies via la AWS Glue connexion doit être en mesure de créer des tables dans cet ensemble de données.

# Création d'un nœud BigQuery cible
<a name="creating-bigquery-target-node"></a>

## Prérequis
<a name="creating-bigquery-target-node-prerequisites"></a>
+ Une connexion BigQuery de type AWS Glue Data Catalog
+ Un AWS Secrets Manager secret pour vos BigQuery informations d'identification Google, utilisées par la connexion.
+ Les autorisations appropriées sur votre tâche pour lire le secret utilisé par la connexion.
+ Le nom et le jeu de données de la table et du projet Google Cloud correspondant dans lequel vous souhaitez écrire.

## Ajouter une cible BigQuery de données
<a name="creating-bigquery-target-node-add"></a>

**Pour ajouter une **cible de données — BigQuery** nœud :**

1.  Choisissez la connexion pour votre cible BigQuery de données. Puisque vous l'avez créé, il devrait être disponible dans le menu déroulant. Si vous devez créer une connexion, choisissez **Créer une BigQuery connexion**. Pour en savoir plus, consultez [ Overview of using connectors and connections ](https://docs.aws.amazon.com/glue/latest/ug/connectors-chapter.html#using-connectors-overview). 

    Une fois que vous avez choisi une connexion, vous pouvez afficher ses propriétés en cliquant sur **Afficher les propriétés**. 

1. Identifiez la BigQuery table dans laquelle vous souhaitez écrire, puis choisissez une **méthode d'écriture**.
   + Direct : écrit BigQuery directement sur le site à l'aide de l'API BigQuery Storage Write.
   + Indirect : écrit dans Google Cloud Storage, puis copie dans BigQuery.

   Si vous souhaitez écrire indirectement, indiquez un emplacement GCS de destination avec un **Compartiment GCS temporaire**. Vous devrez fournir une configuration supplémentaire dans votre AWS Glue connexion. Pour plus d'informations, consultez la section [Utilisation de l'écriture indirecte avec Google BigQuery](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-connect-bigquery-home.html#aws-glue-programming-etl-connect-bigquery-indirect-write).

1.  Décrivez les données que vous souhaitez lire.

   **(Obligatoire) **Définissez le **Projet parent** sur le projet contenant votre table, ou sur un projet parent de facturation, le cas échéant.

   Si vous avez choisi une seule table, **attribuez à Table** le nom d'une BigQuery table Google au format suivant : `[dataset].[table]` 

## Options avancées
<a name="creating-bigquery-connection-advanced-options"></a>

Vous pouvez fournir des options avancées lors de la création d'un BigQuery nœud. Ces options sont les mêmes que celles disponibles lors de la programmation AWS Glue de scripts Spark.

Voir [ BigQuery la référence des options de connexion](https://docs.aws.amazon.com//glue/latest/dg/aws-glue-programming-etl-connect-bigquery-home.html) dans le guide du AWS Glue développeur. 