Étape 2 : Exporter les données précédemment ingérées - AWS IoT Analytics

Avis de fin de support : le 15 décembre 2025, AWS le support de AWS IoT Analytics. Après le 15 décembre 2025, vous ne pourrez plus accéder à la AWS IoT Analytics console ni aux AWS IoT Analytics ressources. Pour plus d'informations, voir AWS IoT Analytics fin du support.

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.

Étape 2 : Exporter les données précédemment ingérées

Pour les données précédemment ingérées et stockées AWS IoT Analytics, vous devez les exporter vers Amazon S3. Pour simplifier ce processus, vous pouvez utiliser un AWS CloudFormation modèle pour automatiser l'ensemble du flux de travail d'exportation des données. Vous pouvez utiliser le script pour une extraction de données partielle (basée sur une plage de temps).

Architecture permettant d'exporter des données précédemment ingérées à l'aide de CloudFormation

AWS CloudFormation modèle pour exporter des données vers Amazon S3

Le schéma ci-dessus illustre le processus d'utilisation d'un AWS CloudFormation modèle pour créer un ensemble de données dans la même AWS IoT Analytics banque de données, en permettant une sélection basée sur un horodatage. Cela permet aux utilisateurs de récupérer des points de données spécifiques dans le délai souhaité. En outre, une règle de diffusion de contenu est créée pour exporter les données dans un compartiment Amazon S3.

La procédure ci-dessous illustre les étapes à suivre.

  1. Préparez le AWS CloudFormation modèle et enregistrez-le en tant que fichier YAML. Par exemple, migrate-datasource.yaml.

    # Cloudformation Template to migrate an AWS IoT Analytics datastore to an external dataset AWSTemplateFormatVersion: 2010-09-09 Description: Migrate an AWS IoT Analytics datastore to an external dataset Parameters: DatastoreName: Type: String Description: The name of the datastore to migrate. AllowedPattern: ^[a-zA-Z0-9_]+$ TimeRange: Type: String Description: | This is an optional argument to split the source data into multiple files. The value should follow the SQL syntax of WHERE clause. E.g. WHERE DATE(Item_TimeStamp) BETWEEN '09/16/2010 05:00:00' and '09/21/2010 09:00:00'. Default: '' MigrationS3Bucket: Type: String Description: The S3 Bucket where the datastore will be migrated to. AllowedPattern: (?!(^xn--|.+-s3alias$))^[a-z0-9][a-z0-9-]{1,61}[a-z0-9]$ MigrationS3BucketPrefix: Type: String Description: The prefix of the S3 Bucket where the datastore will be migrated to. Default: '' AllowedPattern: (^([a-zA-Z0-9.\-_]*\/)*$)|(^$) Resources: # IAM Role to be assumed by the AWS IoT Analytics service to access the external dataset DatastoreMigrationRole: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Principal: Service: iotanalytics.amazonaws.com Action: sts:AssumeRole Policies: - PolicyName: AllowAccessToExternalDataset PolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Action: - s3:GetBucketLocation - s3:GetObject - s3:ListBucket - s3:ListBucketMultipartUploads - s3:ListMultipartUploadParts - s3:AbortMultipartUpload - s3:PutObject - s3:DeleteObject Resource: - !Sub arn:aws:s3:::${MigrationS3Bucket} - !Sub arn:aws:s3:::${MigrationS3Bucket}/${MigrationS3BucketPrefix}* # This dataset that will be created in the external S3 Export MigratedDataset: Type: AWS::IoTAnalytics::Dataset Properties: DatasetName: !Sub ${DatastoreName}_generated Actions: - ActionName: SqlAction QueryAction: SqlQuery: !Sub SELECT * FROM ${DatastoreName} ${TimeRange} ContentDeliveryRules: - Destination: S3DestinationConfiguration: Bucket: !Ref MigrationS3Bucket Key: !Sub ${MigrationS3BucketPrefix}${DatastoreName}/!{iotanalytics:scheduleTime}/!{iotanalytics:versionId}.csv RoleArn: !GetAtt DatastoreMigrationRole.Arn RetentionPeriod: Unlimited: true VersioningConfiguration: Unlimited: true
  2. Déterminez la AWS IoT Analytics banque de données dont les données doivent être exportées. Pour ce guide, nous utiliserons un exemple de banque de données nomméiot_analytics_datastore.

    Identifiez la AWS IoT Analytics banque de données :
  3. Créez ou identifiez un compartiment Amazon S3 dans lequel les données seront exportées. Pour ce guide, nous utiliserons le iot-analytics-export godet.

    Création ou identification d'un compartiment Amazon S3
  4. Créez la AWS CloudFormation pile.

    Téléchargement vers la console CFN
  5. Entrez un nom de pile et fournissez les paramètres suivants :

    • DatastoreName: nom de la AWS IoT Analytics banque de données que vous souhaitez migrer.

    • Migrations3bucket : le compartiment Amazon S3 dans lequel les données migrées sont stockées.

    • Migrations3 BucketPrefix (facultatif) : préfixe du compartiment Amazon S3.

    • TimeRange(Facultatif) : SQL WHERE clause permettant de filtrer les données exportées, permettant de diviser les données sources en plusieurs fichiers en fonction de la plage de temps spécifiée.

    Détails de la pile de consoles CFN
  6. Cliquez sur Suivant sur l'écran Configurer les options de pile.

  7. Cochez la case pour confirmer la création des ressources IAM, puis cliquez sur Soumettre.

    Détails de la pile de consoles CFN
  8. Vérifiez que la création de la pile est terminée dans l'onglet Événements.

    Onglet Événements
  9. Une fois le stack terminé, accédez à AWS IoT Analytics → Ensembles de données pour afficher le jeu de données migré.

    Afficher les ensembles de données
  10. Sélectionnez le jeu de données généré, puis cliquez sur Exécuter maintenant pour exporter le jeu de données.

    Exécuter des ensembles de données
  11. Le contenu peut être consulté dans l'onglet Contenu de l'ensemble de données.

    onglet Ensembles de données de contenu
  12. Enfin, passez en revue le contenu exporté en ouvrant le iot-analytics-exportcompartiment dans la console Amazon S3.

    Onglet Événements