

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.

# Stockage et structure des flux de AWS Marketplace données
<a name="data-feed-details"></a>

AWS Marketplace fournit des flux de données en tant que mécanisme permettant d'envoyer des informations structurées sur les up-to-date produits et les clients des AWS Marketplace systèmes aux compartiments Amazon S3 du vendeur pour un ETL (extraction, transformation et chargement) entre des outils de business intelligence appartenant au vendeur. Cette rubrique fournit des informations supplémentaires sur la structure et le stockage des flux de données.

Les flux de données collectent et transmettent des fichiers de valeurs séparées par des virgules (CSV) à un compartiment Amazon S3 chiffré que vous fournissez. Les fichiers CSV présentent les caractéristiques suivantes :
+ Ils respectent les [normes 4180.](https://tools.ietf.org/html/rfc4180)
+ L'encodage des caractères est UTF-8 sans nomenclature.
+ Les virgules sont utilisées comme séparateurs entre les valeurs.
+ L'échappement des champs s'effectue à l'aide de guillemets doubles. 
+ `\n` est le caractère de saut de ligne.
+ Les dates sont indiquées dans le fuseau horaire UTC, sont au format de date et d'heure ISO 8601 et sont exactes à la seconde près.
+ Toutes les valeurs `*_period_start_date` et `*_period_end_date` sont inclusives, ce qui signifie que `23:59:59` est le dernier horodatage possible pour n'importe quel jour. 
+ Tous les champs monétaires sont précédés d'un champ de devise. 
+ Les champs monétaires utilisent un caractère point (`.`) comme séparateur décimal et n'utilisent pas de virgule (,) comme séparateur des milliers. 

Les flux de données sont générés et stockés comme suit :
+ Les flux de données sont générés en un jour et contiennent 24 heures de données de la veille. 
+ Dans le compartiment Amazon S3, les flux de données sont organisés par mois selon le format suivant :

  `bucket-name/data-feed-name_version/year=YYYY/month=MM/data.csv`
+ Au fur et à mesure que chaque flux de données quotidien est généré, il est ajouté au fichier CSV existant pour ce mois. Lorsqu'un nouveau mois démarre, un nouveau fichier CSV est généré pour chaque flux de données. 
+ Les informations contenues dans les flux de données sont remplies du 2010/01/01 au 2020/04/30 (inclus) et sont disponibles dans le [fichier CSV](#data-feed-details) du sous-dossier `year=2010/month=01`.

  Vous remarquerez peut-être des cas où le fichier du mois en cours pour un flux de données donné ne contient que des en-têtes de colonne et aucune donnée. Cela signifie qu'il n'y avait pas de nouvelles entrées pour ce mois pour le flux. Cela peut se produire avec des flux de données qui sont mis à jour moins fréquemment, comme le flux de produits. Dans ces cas, les données sont disponibles dans le dossier rempli. 
+ Dans Amazon S3, vous pouvez créer une [politique de cycle de vie Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-lifecycle.html) pour gérer la durée de conservation des fichiers dans le compartiment. 
+ Vous pouvez configurer Amazon SNS pour qu'il vous avertisse lorsque des données sont livrées à votre compartiment Amazon S3 chiffré. Pour plus d'informations sur la configuration des notifications, consultez [Getting started with Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html) dans le manuel *Amazon Simple Notification Service Developer Guide*.

## Historisation des données
<a name="data-feed-historization"></a>

Chaque flux de données comprend des colonnes qui documentent l'historique des données. Sauf pour `valid_to`, ces colonnes sont communes à tous les flux de données. Elles sont incluses en tant que schéma d'historique commun et sont utiles pour interroger les données. 


| Nom de la colonne  | Description  | 
| --- | --- | 
| valid\$1from | Première date pour laquelle la valeur de la clé primaire est valide par rapport aux valeurs des autres champs. | 
| valid\$1to | Cette colonne est uniquement affichée dans le flux de données [Adresse](data-feed-address.md) et elle est toujours vide. | 
| insert\$1date | Date à laquelle un enregistrement a été inséré dans le flux de données. | 
| update\$1date | Date de la dernière mise à jour de l'enregistrement.  | 
| delete\$1date | Cette colonne est toujours vide. | 

Voici un exemple de ces colonnes. 


|  valid\$1from  |  valid\$1to  |  insert\$1date  |  update\$1date  |  delete\$1date  | 
| --- | --- | --- | --- | --- | 
|  2018-12-12T 02:00:00 Z  |   |  2018-12-12T 02:00:00 Z  |  2018-12-12T 02:00:00 Z  |   | 
|  2019-03-29T 03:00:00 Z  |   |  2019-03-29T 03:00:00 Z  |  2019-03-29T 03:00:00 Z  |   | 
|  2019-03-29T 03:00:00 Z  |   |  2019-03-29T 03:00:00 Z  |  2019-04-28 03:00:00 Z  |   | 

Les `update_date` champs `valid_from` et forment ensemble un *modèle de données bi-temporel*. Le `valid_from` champ, tel qu'il est nommé, vous indique à partir de quel moment l'article est valide. Si l'élément a été modifié, il peut contenir plusieurs enregistrements dans le flux, chacun portant une `valid_from` date différente `update_date` mais identique. Par exemple, pour trouver la valeur actuelle d'un élément, vous devez rechercher l'enregistrement le plus récent `update_date` dans la liste des enregistrements contenant la `valid_from` date la plus récente.

Dans l'exemple ci-dessus, l'enregistrement a été créé à l'origine le 12/2018. Elle a ensuite été modifiée le 29/03/2019 (par exemple, si l'adresse figurant dans le dossier a changé). Plus tard, le 28/04/2019, le changement d'adresse a été corrigé (il `valid_from` n'a donc pas changé, mais il l'`update_date`a fait). La correction de l'adresse (un événement rare) modifie rétroactivement l'enregistrement par rapport à la `valid_from` date d'origine, de sorte que le champ n'a pas changé. Une requête visant à trouver le plus récent `valid_from` renverrait deux enregistrements, celui contenant le plus récent `update_date` indique l'enregistrement actuel.