NAME

Paws::IoTAnalytics::CreateDatastore - Arguments for method CreateDatastore on Paws::IoTAnalytics

DESCRIPTION

This class represents the parameters used for calling the method CreateDatastore on the AWS IoT Analytics service. Use the attributes of this class as arguments to method CreateDatastore.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateDatastore.

SYNOPSIS

my $iotanalytics = Paws->service('IoTAnalytics');
my $CreateDatastoreResponse = $iotanalytics->CreateDatastore(
  DatastoreName       => 'MyDatastoreName',
  DatastorePartitions => {
    Partitions => [
      {
        AttributePartition => {
          AttributeName => 'MyPartitionAttributeName',    # min: 1, max: 128

        },    # OPTIONAL
        TimestampPartition => {
          AttributeName   => 'MyPartitionAttributeName',  # min: 1, max: 128
          TimestampFormat =>
            'MyTimestampFormat',    # min: 1, max: 50; OPTIONAL
        },    # OPTIONAL
      },
      ...
    ],    # max: 25; OPTIONAL
  },    # OPTIONAL
  DatastoreStorage => {
    CustomerManagedS3 => {
      Bucket    => 'MyBucketName',     # min: 3, max: 255
      RoleArn   => 'MyRoleArn',        # min: 20, max: 2048
      KeyPrefix => 'MyS3KeyPrefix',    # min: 1, max: 255; OPTIONAL
    },    # OPTIONAL
    ServiceManagedS3 => {

    },    # OPTIONAL
  },    # OPTIONAL
  FileFormatConfiguration => {
    JsonConfiguration => {

    },    # OPTIONAL
    ParquetConfiguration => {
      SchemaDefinition => {
        Columns => [
          {
            Name => 'MyColumnName',        # min: 1, max: 255
            Type => 'MyColumnDataType',    # min: 1, max: 131072

          },
          ...
        ],    # OPTIONAL
      },    # OPTIONAL
    },    # OPTIONAL
  },    # OPTIONAL
  RetentionPeriod => {
    NumberOfDays => 1,    # min: 1; OPTIONAL
    Unlimited    => 1,    # OPTIONAL
  },    # OPTIONAL
  Tags => [
    {
      Key   => 'MyTagKey',      # min: 1, max: 256
      Value => 'MyTagValue',    # min: 1, max: 256

    },
    ...
  ],    # OPTIONAL
);

# Results:
my $DatastoreArn    = $CreateDatastoreResponse->DatastoreArn;
my $DatastoreName   = $CreateDatastoreResponse->DatastoreName;
my $RetentionPeriod = $CreateDatastoreResponse->RetentionPeriod;

# Returns a L<Paws::IoTAnalytics::CreateDatastoreResponse> object.

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/iotanalytics/CreateDatastore

ATTRIBUTES

REQUIRED DatastoreName => Str

The name of the data store.

DatastorePartitions => Paws::IoTAnalytics::DatastorePartitions

Contains information about the partitions in a data store.

DatastoreStorage => Paws::IoTAnalytics::DatastoreStorage

Where data store data is stored. You can choose one of serviceManagedS3 or customerManagedS3 storage. If not specified, the default is serviceManagedS3. You cannot change this storage option after the data store is created.

FileFormatConfiguration => Paws::IoTAnalytics::FileFormatConfiguration

Contains the configuration information of file formats. AWS IoT Analytics data stores support JSON and Parquet (https://parquet.apache.org/).

The default file format is JSON. You can specify only one format.

You can't change the file format after you create the data store.

RetentionPeriod => Paws::IoTAnalytics::RetentionPeriod

How long, in days, message data is kept for the data store. When customerManagedS3 storage is selected, this parameter is ignored.

Tags => ArrayRef[Paws::IoTAnalytics::Tag]

Metadata which can be used to manage the data store.

SEE ALSO

This class forms part of Paws, documenting arguments for method CreateDatastore in Paws::IoTAnalytics

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues