[ aws . iotanalytics ]
Creates a data store, which is a repository for messages.
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
create-datastore
--datastore-name <value>
[--datastore-storage <value>]
[--retention-period <value>]
[--tags <value>]
[--file-format-configuration <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
--datastore-name
(string)
The name of the data store.
--datastore-storage
(structure)
Where data store data is stored. You can choose one of
serviceManagedS3
orcustomerManagedS3
storage. If not specified, the default isserviceManagedS3
. You cannot change this storage option after the data store is created.serviceManagedS3 -> (structure)
Use this to store data store data in an S3 bucket managed by AWS IoT Analytics. You cannot change the choice of service-managed or customer-managed S3 storage after the data store is created.
customerManagedS3 -> (structure)
Use this to store data store data in an S3 bucket that you manage. When customer managed storage is selected, the
retentionPeriod
parameter is ignored. The choice of service-managed or customer-managed S3 storage cannot be changed after creation of the data store.bucket -> (string)
The name of the S3 bucket in which data store data is stored.
keyPrefix -> (string)
Optional. The prefix used to create the keys of the data store data objects. Each object in an S3 bucket has a key that is its unique identifier in the bucket. Each object in a bucket has exactly one key. The prefix must end with a forward slash (/).
roleArn -> (string)
The ARN of the role that grants AWS IoT Analytics permission to interact with your Amazon S3 resources.
Shorthand Syntax:
serviceManagedS3={},customerManagedS3={bucket=string,keyPrefix=string,roleArn=string}
JSON Syntax:
{
"serviceManagedS3": {
},
"customerManagedS3": {
"bucket": "string",
"keyPrefix": "string",
"roleArn": "string"
}
}
--retention-period
(structure)
How long, in days, message data is kept for the data store. When
customerManagedS3
storage is selected, this parameter is ignored.unlimited -> (boolean)
If true, message data is kept indefinitely.
numberOfDays -> (integer)
The number of days that message data is kept. The
unlimited
parameter must be false.
Shorthand Syntax:
unlimited=boolean,numberOfDays=integer
JSON Syntax:
{
"unlimited": true|false,
"numberOfDays": integer
}
--tags
(list)
Metadata which can be used to manage the data store.
(structure)
A set of key-value pairs that are used to manage the resource.
key -> (string)
The tag’s key.
value -> (string)
The tag’s value.
Shorthand Syntax:
key=string,value=string ...
JSON Syntax:
[
{
"key": "string",
"value": "string"
}
...
]
--file-format-configuration
(structure)
Contains the configuration information of file formats. AWS IoT Analytics data stores support JSON and Parquet .
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.
jsonConfiguration -> (structure)
Contains the configuration information of the JSON format.
parquetConfiguration -> (structure)
Contains the configuration information of the Parquet format.
schemaDefinition -> (structure)
Information needed to define a schema.
columns -> (list)
Specifies one or more columns that store your data.
Each schema can have up to 100 columns. Each column can have up to 100 nested types
(structure)
Contains information about a column that stores your data.
name -> (string)
The name of the column.
type -> (string)
The type of data. For more information about the supported data types, see Common data types in the AWS Glue Developer Guide .
JSON Syntax:
{
"jsonConfiguration": {
},
"parquetConfiguration": {
"schemaDefinition": {
"columns": [
{
"name": "string",
"type": "string"
}
...
]
}
}
}
--cli-input-json
| --cli-input-yaml
(string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton
. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml
.
--generate-cli-skeleton
(string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input
, prints a sample input JSON that can be used as an argument for --cli-input-json
. Similarly, if provided yaml-input
it will print a sample input YAML that can be used with --cli-input-yaml
. If provided with the value output
, it validates the command inputs and returns a sample output JSON for that command.
See ‘aws help’ for descriptions of global parameters.
To create a data store
The following create-datastore
example creates a data store, which is a repository for messages.
aws iotanalytics create-datastore \
--cli-input-json file://create-datastore.json
Contents of create-datastore.json
:
{
"datastoreName": "mydatastore",
"retentionPeriod": {
"numberOfDays": 90
},
"tags": [
{
"key": "Environment",
"value": "Production"
}
]
}
Output:
{
"datastoreName": "mydatastore",
"datastoreArn": "arn:aws:iotanalytics:us-west-2:123456789012:datastore/mydatastore",
"retentionPeriod": {
"numberOfDays": 90,
"unlimited": false
}
}
For more information, see CreateDatastore in the AWS IoT Analytics API Reference.
datastoreName -> (string)
The name of the data store.
datastoreArn -> (string)
The ARN of the data store.
retentionPeriod -> (structure)
How long, in days, message data is kept for the data store.
unlimited -> (boolean)
If true, message data is kept indefinitely.
numberOfDays -> (integer)
The number of days that message data is kept. The
unlimited
parameter must be false.