Fase 2: Esportazione dei dati precedentemente acquisiti - AWS IoT Analytics

Avviso di fine del supporto: il 15 dicembre 2025, AWS terminerà il supporto per AWS IoT Analytics. Dopo il 15 dicembre 2025, non potrai più accedere alla AWS IoT Analytics console o AWS IoT Analytics alle risorse. Per ulteriori informazioni, consulta AWS IoT Analytics Fine del supporto.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Fase 2: Esportazione dei dati precedentemente acquisiti

Per i dati precedentemente importati e archiviati AWS IoT Analytics, dovrai esportarli in Amazon S3. Per semplificare questo processo, puoi utilizzare un AWS CloudFormation modello per automatizzare l'intero flusso di lavoro di esportazione dei dati. È possibile utilizzare lo script per l'estrazione parziale dei dati (basata sull'intervallo di tempo).

Architettura per esportare i dati precedentemente acquisiti utilizzando CloudFormation

AWS CloudFormation modello per esportare dati in Amazon S3

Il diagramma precedente illustra il processo di utilizzo di un AWS CloudFormation modello per creare un set di dati all'interno dello stesso AWS IoT Analytics datastore, abilitando la selezione in base a un timestamp. Ciò consente agli utenti di recuperare punti dati specifici entro un periodo di tempo desiderato. Inoltre, viene creata una regola di distribuzione dei contenuti per esportare i dati in un bucket Amazon S3.

La procedura riportata di seguito illustra i passaggi.

  1. Preparate il AWS CloudFormation modello e salvatelo come file YAML. Ad esempio, 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. Determina il AWS IoT Analytics datastore che richiede l'esportazione dei dati. Per questa guida, utilizzeremo un datastore di esempio denominato. iot_analytics_datastore

    Identifica il Datastore: AWS IoT Analytics
  3. Crea o identifica un bucket Amazon S3 in cui verranno esportati i dati. Per questa guida, useremo il bucket. iot-analytics-export

    Crea o identifica un bucket Amazon S3
  4. Crea lo stack AWS CloudFormation .

    Carica sulla console CFN
  5. Inserisci un nome per lo stack e fornisci i seguenti parametri:

    • DatastoreName: il nome del AWS IoT Analytics datastore da migrare.

    • Migrations3bucket: il bucket Amazon S3 in cui sono archiviati i dati migrati.

    • Migrations3 BucketPrefix (opzionale): il prefisso per il bucket Amazon S3.

    • TimeRange(Facoltativo): SQL WHERE clausola per filtrare i dati esportati, che consente di suddividere i dati di origine in più file in base all'intervallo di tempo specificato.

    Dettagli dello stack della console CFN
  6. Fai clic su Avanti nella schermata Configura le opzioni dello stack.

  7. Seleziona la casella di controllo per confermare la creazione di risorse IAM e fai clic su Invia.

    Dettagli dello stack della console CFN
  8. Controlla la creazione dello stack nella scheda Eventi per completarla.

    Scheda Eventi
  9. Una volta completato con successo lo stack, vai a AWS IoT Analytics → Set di dati per visualizzare il set di dati migrato.

    Visualizza i set di dati
  10. Seleziona il set di dati generato e fai clic su Esegui ora per esportare il set di dati.

    Esegui set di dati
  11. Il contenuto può essere visualizzato nella scheda Contenuto del set di dati.

    Scheda Set di dati di contenuto
  12. Infine, esamina il contenuto esportato aprendo il iot-analytics-exportbucket nella console Amazon S3.

    Scheda Eventi