

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.

# Options de format pour les entrées et sorties dans AWS Glue pour Spark
<a name="aws-glue-programming-etl-format"></a>

Ces pages fournissent des informations sur la prise en charge des fonctionnalités et les paramètres de configuration pour les formats de données pris en charge par AWS Glue pour Spark. Reportez-vous à la section suivante pour une description de l'utilisation et de l'applicabilité de ces informations. 

## Prise en charge des fonctionnalités de tous les formats de données dans AWS Glue
<a name="aws-glue-programming-etl-format-features"></a>

 Chaque format de données peut prendre en charge différentes fonctionnalités AWS de Glue. Les fonctionnalités communes suivantes peuvent être prises en charge ou non en fonction de votre type de format. Reportez-vous à la documentation de votre format de données pour comprendre comment tirer parti de nos caractéristiques pour répondre à vos besoins. 


|  |  | 
| --- |--- |
| Lecture | AWS Glue peut reconnaître et interpréter ce format de données sans ressources supplémentaires, telles que des connecteurs. | 
| Écrire | AWS Glue peut écrire des données dans ce format sans ressources supplémentaires. Vous pouvez inclure des bibliothèques tierces dans votre travail et utiliser les fonctions standard d'Apache Spark pour écrire des données, comme vous le feriez dans d'autres environnements Spark. Pour plus d'informations sur ces bibliothèques, consultez [Utiliser les bibliothèques Python avec AWS Glue](aws-glue-programming-python-libraries.md). | 
| Lecture en streaming | AWS Glue peut reconnaître et interpréter ce format de données à partir d'un flux de messages Apache Kafka, Amazon Managed Streaming for Apache Kafka ou Amazon Kinesis. Nous nous attendons à ce que les flux présentent les données dans un format cohérent, afin qu'elles soient lues comme DataFrames. | 
| Groupement des petits fichiers | AWS Glue peut regrouper des fichiers pour créer un travail par lots envoyé à chaque nœud lors de transformations avec AWS Glue. Cela peut améliorer considérablement les performances pour les charges de travail impliquant de grandes quantités de petits fichiers. Pour de plus amples informations, veuillez consulter [Lecture des fichiers en entrée dans des groupes de plus grande taille](grouping-input-files.md).  | 
| Signets de tâche | AWS Glue peut suivre la progression des transformations effectuant le même travail sur le même jeu de données d'une exécution à l'autre à l'aide de signets de tâches. Cela peut améliorer les performances des charges de travail impliquant des jeux de données pour lesquels le travail doit uniquement être effectué sur les nouvelles données depuis la dernière exécution de la tâche. Pour de plus amples informations, veuillez consulter [Suivi des données traitées à l'aide de signets de tâche](monitor-continuations.md). | 

## Paramètres utilisés pour interagir avec les formats de données dans AWS Glue
<a name="aws-glue-programming-etl-format-parameters"></a>

Certains types de connexion AWS Glue prennent en charge plusieurs `format` types, ce qui vous oblige à spécifier des informations sur le format de vos données avec un `format_options` objet lorsque vous utilisez des méthodes telles que`GlueContext.write_dynamic_frame.from_options`.
+ `s3`— Pour plus d'informations, consultez Types de connexion et options pour l'ETL dans AWS Glue :[Paramètres de connexion S3](aws-glue-programming-etl-connect-s3-home.md#aws-glue-programming-etl-connect-s3). Vous pouvez également afficher la documentation des méthodes facilitant ce type de connexion :[create\_dynamic\_frame\_from\_options](aws-glue-api-crawler-pyspark-extensions-glue-context.md#aws-glue-api-crawler-pyspark-extensions-glue-context-create_dynamic_frame_from_options) et [write\_dynamic\_frame\_from\_options](aws-glue-api-crawler-pyspark-extensions-glue-context.md#aws-glue-api-crawler-pyspark-extensions-glue-context-write_dynamic_frame_from_options) en Python et dans les méthodes Scala correspondantes [getSourceWithFormat def](glue-etl-scala-apis-glue-gluecontext.md#glue-etl-scala-apis-glue-gluecontext-defs-getSourceWithFormat) et [getSinkWithFormat def](glue-etl-scala-apis-glue-gluecontext.md#glue-etl-scala-apis-glue-gluecontext-defs-getSinkWithFormat). 

  
+ `kinesis`— Pour plus d'informations, consultez Types de connexion et options pour l'ETL dans AWS Glue :[Paramètres de connexion Kinesis](aws-glue-programming-etl-connect-kinesis-home.md#aws-glue-programming-etl-connect-kinesis). Vous pouvez également afficher la documentation de la méthode facilitant ce type de connexion :[create\_data\_frame\_from\_options](aws-glue-api-crawler-pyspark-extensions-glue-context.md#aws-glue-api-crawler-pyspark-extensions-glue-context-create-dataframe-from-options) et la méthode Scala correspondante [def createDataFrame FromOptions](glue-etl-scala-apis-glue-gluecontext.md#glue-etl-scala-apis-glue-gluecontext-defs-createDataFrameFromOptions).
+ `kafka`— Pour plus d'informations, consultez Types de connexion et options pour l'ETL dans AWS Glue :[Paramètres de connexion de Kafka](aws-glue-programming-etl-connect-kafka-home.md#aws-glue-programming-etl-connect-kafka). Vous pouvez également afficher la documentation de la méthode facilitant ce type de connexion :[create\_data\_frame\_from\_options](aws-glue-api-crawler-pyspark-extensions-glue-context.md#aws-glue-api-crawler-pyspark-extensions-glue-context-create-dataframe-from-options) et la méthode Scala correspondante [def createDataFrame FromOptions](glue-etl-scala-apis-glue-gluecontext.md#glue-etl-scala-apis-glue-gluecontext-defs-createDataFrameFromOptions).

Certains types de connexion ne nécessitent pas`format_options`. Par exemple, dans le cadre d'une utilisation normale, une connexion JDBC à une base de données relationnelle récupère les données dans un format de données tabulaire cohérent. Par conséquent, la lecture à partir d'une connexion JDBC ne nécessiterait pas `format_options`.

Certaines méthodes pour lire et écrire des données dans de la colle ne nécessitent pas`format_options`. Par exemple, en utilisant `GlueContext.create_dynamic_frame.from_catalog` les crawlers AWS Glue. Les robots d'exploration déterminent la forme de vos données. Lorsque vous utilisez des robots d'exploration, un classificateur AWS Glue examinera vos données afin de prendre des décisions éclairées quant à la manière de représenter le format de vos données. Il stockera ensuite une représentation de vos données dans le catalogue de données AWS Glue, qui peut être utilisé dans un script AWS Glue ETL pour récupérer vos données avec la `GlueContext.create_dynamic_frame.from_catalog` méthode. Les robots d'exploration éliminent la nécessité de spécifier manuellement des informations sur le format de vos données.

Pour les tâches qui accèdent aux tables AWS Lake Formation gouvernées, AWS Glue prend en charge la lecture et l'écriture dans tous les formats pris en charge par les tables régies par Lake Formation. Pour consulter la liste actuelle des formats pris en charge pour les tables AWS Lake Formation gouvernées, consultez la section [Remarques et restrictions relatives aux tables gouvernées](https://docs.aws.amazon.com/lake-formation/latest/dg/governed-table-restrictions.html) dans le *guide du AWS Lake Formation développeur*.

**Note**  
Pour écrire Apache Parquet, AWS Glue ETL prend uniquement en charge l'écriture dans une table régie en spécifiant une option pour un type de dispositif d'écriture Parquet personnalisé optimisé pour les cadres dynamiques. Lorsque vous écrivez sur une table régie avec le format `parquet`, vous devez ajouter la clé `useGlueParquetWriter` avec une valeur de `true` dans les paramètres de la table.

**Topics**
+ [Prise en charge des fonctionnalités de tous les formats de données dans AWS Glue](#aws-glue-programming-etl-format-features)
+ [Paramètres utilisés pour interagir avec les formats de données dans AWS Glue](#aws-glue-programming-etl-format-parameters)
+ [Utilisation du format CSV dans AWS Glue](aws-glue-programming-etl-format-csv-home.md)
+ [Utilisation du format Parquet dans AWS Glue](aws-glue-programming-etl-format-parquet-home.md)
+ [Utilisation du format XML dans AWS Glue](aws-glue-programming-etl-format-xml-home.md)
+ [Utilisation du format Avro dans Glue AWS](aws-glue-programming-etl-format-avro-home.md)
+ [Utilisation du format GrokLog dans Glue AWS](aws-glue-programming-etl-format-grokLog-home.md)
+ [Utilisation du format Ion dans AWS Glue](aws-glue-programming-etl-format-ion-home.md)
+ [Utilisation du format JSON dans AWS Glue](aws-glue-programming-etl-format-json-home.md)
+ [Utilisation du format ORC dans Glue AWS](aws-glue-programming-etl-format-orc-home.md)
+ [Utilisation de frameworks de lacs de données avec des tâches AWS Glue ETL](aws-glue-programming-etl-datalake-native-frameworks.md)
+ [Référence de configuration partagée](#aws-glue-programming-etl-format-shared-reference)

## Référence de configuration partagée
<a name="aws-glue-programming-etl-format-shared-reference"></a>

 Vous pouvez utiliser les valeurs `format_options` suivantes avec tout type de format. 
+ `attachFilename` : une chaîne au format approprié à utiliser comme nom de colonne. Si vous fournissez cette option, le nom du fichier source de l'enregistrement sera ajouté à l'enregistrement. La valeur du paramètre sera utilisée comme nom de colonne.
+ `attachTimestamp` : une chaîne au format approprié à utiliser comme nom de colonne. Si vous fournissez cette option, l'heure de la modification du fichier source de l'enregistrement sera ajoutée à l'enregistrement. La valeur du paramètre sera utilisée comme nom de colonne.