[ aws . iotanalytics ]
create-dataset
Описание
Используется для создания набора данных. Набор данных хранит данные, извлеченные из хранилища данных путём применения queryAction (запрос SQL) или containerAction (выполнение контейнеризованного приложения). Данная операция создаёт каркас набора данных. Набор данных может быть заполнен вручную, вызвав CreateDatasetContent, или автоматически согласно триггеру, который вы укажете.
См. также: Документацию AWS API
Синтаксис
create-dataset
--dataset-name <value>
--actions <value>
[--triggers <value>]
[--content-delivery-rules <value>]
[--retention-period <value>]
[--versioning-configuration <value>]
[--tags <value>]
[--late-data-rules <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--dataset-name (строка)
--actions (список)
Список действий, создающих содержимое набора данных.
(структура)
Объект DatasetAction, определяющий, как автоматически создаётся содержимое набора данных.
actionName -> (строка)
queryAction -> (структура)
Объект SqlQueryDatasetAction, использующий SQL-запрос для автоматического создания содержимого набора данных.
sqlQuery -> (строка)
filters -> (список)
Предфильтры, применяемые к данным сообщения.
(структура)
Информация, используемая для фильтрации данных сообщений, чтобы разделить их по временным рамкам их прибытия.
deltaTime -> (структура)
Используется для ограничения данных сообщениями, которые поступили после последнего выполнения действия.
offsetSeconds -> (целое число)
timeExpression -> (строка)
containerAction -> (структура)
Информация, которая позволяет системе запускать контейнизированное приложение для создания содержимого набора данных. Приложение должно находиться в контейнере Docker вместе со всеми необходимыми библиотеками поддержки.
image -> (строка)
executionRoleArn -> (строка)
containerAction. Это включает, как минимум, разрешение на получение содержимого набора данных, являющегося входом в контейнизированное приложение.resourceConfiguration -> (структура)
Настройка ресурса, который выполняет containerAction.
computeType -> (строка)
containerAction. Возможные значения: ACU_1 (vCPU=4, память=16 ГБ) или ACU_2 (vCPU=8, память=32 ГБ).volumeSizeInGB -> (целое число)
containerAction (мин: 1, макс: 50).variables -> (список)
Значения переменных, используемых в контексте выполнения контейнизированного приложения (по сути, параметры, передаваемые приложению). Каждая переменная должна иметь имя и значение, заданное одним из stringValue, datasetContentVersionValue или outputFileUriValue.
(структура)
Экземпляр переменной, который необходимо передать в выполнение containerAction. Каждая переменная должна иметь имя и значение, заданное одним из stringValue, datasetContentVersionValue или outputFileUriValue.
name -> (строка)
stringValue -> (строка)
doubleValue -> (число с плавающей точкой)
datasetContentVersionValue -> (структура)
Значение переменной как структура, определяющая версию содержимого набора данных.
datasetName -> (строка)
outputFileUriValue -> (структура)
Значение переменной как структура, определяющая URI выходного файла.
fileName -> (строка)
Синтаксис JSON:
[
{
"actionName": "string",
"queryAction": {
"sqlQuery": "string",
"filters": [
{
"deltaTime": {
"offsetSeconds": integer,
"timeExpression": "string"
}
}
...
]
},
"containerAction": {
"image": "string",
"executionRoleArn": "string",
"resourceConfiguration": {
"computeType": "ACU_1"|"ACU_2",
"volumeSizeInGB": integer
},
"variables": [
{
"name": "string",
"stringValue": "string",
"doubleValue": double,
"datasetContentVersionValue": {
"datasetName": "string"
},
"outputFileUriValue": {
"fileName": "string"
}
}
...
]
}
}
...
]
--triggers (список)
Список триггеров. Триггер вызывает заполнение содержимого набора данных в определённый момент времени или при создании содержимого другого набора данных. Список триггеров может быть пустым или содержать до пяти DataSetTrigger объектов.
(структура)
DatasetTrigger, определяющий, когда набор данных автоматически обновляется.
schedule -> (структура)
Расписание, когда инициируется триггер.
expression -> (строка)
dataset -> (структура)
Набор данных, создание содержимого которого запускает создание содержимого данного набора данных.
name -> (строка)
Сокращённый синтаксис:
schedule={expression=string},dataset={name=string} ...
Синтаксис JSON:
[
{
"schedule": {
"expression": "string"
},
"dataset": {
"name": "string"
}
}
...
]
--content-delivery-rules (список)
При создании содержимого набора данных, оно доставляется в указанные здесь пункты назначения.
(структура)
При создании содержимого набора данных, оно доставляется в указанный пункт назначения.
entryName -> (строка)
destination -> (структура)
Пункт назначения, в который доставляется содержимое набора данных.
iotEventsDestinationConfiguration -> (структура)
Конфигурационная информация для доставки содержимого набора данных в IoT Events.
inputName -> (строка)
roleArn -> (строка)
s3DestinationConfiguration -> (структура)
Конфигурационная информация для доставки содержимого набора данных в Amazon S3.
bucket -> (строка)
key -> (строка)
Ключ объекта содержимого набора данных в ведре S3. Каждый объект имеет ключ, являющийся уникальным идентификатором. Каждый объект имеет ровно один ключ.
Вы можете создать уникальный ключ, используя следующие варианты:
- Используйте
!{iotanalytics:scheduleTime}для вставки времени выполнения запланированного SQL-запроса. - Используйте
!{iotanalytics:versionId}для вставки уникального хэша, идентифицирующего содержимое набора данных. - Используйте
!{iotanalytics:creationTime}для вставки времени создания содержимого набора данных.
Следующий пример создаёт уникальный ключ для CSV-файла: dataset/mydataset/!{iotanalytics:scheduleTime}/!{iotanalytics:versionId}.csv
Примечание
Если вы не используете!{iotanalytics:versionId} для указания ключа, вы можете получить дублирующиеся ключи. Например, у вас могут быть два содержимого набора данных с одинаковым scheduleTime, но разными versionId.glueConfiguration -> (структура)
Конфигурационная информация для координации с Glue, полностью управляемой службой извлечения, преобразования и загрузки (ETL).
tableName -> (строка)
databaseName -> (строка)
roleArn -> (строка)
Синтаксис JSON:
[
{
"entryName": "string",
"destination": {
"iotEventsDestinationConfiguration": {
"inputName": "string",
"roleArn": "string"
},
"s3DestinationConfiguration": {
"bucket": "string",
"key": "string",
"glueConfiguration": {
"tableName": "string",
"databaseName": "string"
},
"roleArn": "string"
}
}
}
...
]
--retention-period (структура)
Необязательно. Сколько дней хранятся версии содержимого набора данных для набора данных. Если не указано или установлено значение null, версии содержимого набора данных хранятся не более 90 дней. Количество хранящихся версий содержимого набора данных определяется параметром versioningConfiguration. Дополнительная информация см. в разделе "Хранение нескольких версий наборов данных IoT Analytics" в руководстве пользователя по IoT Analytics.
unlimited -> (логическое значение)
numberOfDays -> (целое число)
unlimited должен быть false.Сокращённый синтаксис:
unlimited=boolean,numberOfDays=integer
Синтаксис JSON:
{
"unlimited": true|false,
"numberOfDays": integer
}
--versioning-configuration (структура)
Необязательно. Сколько версий содержимого набора данных хранится. Если не указано или установлено значение null, только последняя версия плюс последняя успешная версия (если они отличаются) сохраняются в течение периода, указанного параметром retentionPeriod. Дополнительная информация см. в разделе "Хранение нескольких версий наборов данных IoT Analytics" в руководстве пользователя по IoT Analytics.
unlimited -> (логическое значение)
maxVersions -> (целое число)
unlimited должен быть false.Сокращённый синтаксис:
unlimited=boolean,maxVersions=integer
Синтаксис JSON:
{
"unlimited": true|false,
"maxVersions": integer
}
--tags (список)
Метаданные, которые могут использоваться для управления набором данных.
(структура)
Набор пар ключ-значение, используемых для управления ресурсом.
key -> (строка)
value -> (строка)
Сокращённый синтаксис:
key=string,value=string ...
Синтаксис JSON:
[
{
"key": "string",
"value": "string"
}
...
]
--late-data-rules (список)
Список правил обработки данных, отправляющих уведомления в CloudWatch, когда данные приходят с опозданием. Для указания lateDataRules набор данных должен использовать фильтр DeltaTimer.
(структура)
Структура, содержащая имя и конфигурацию правила обработки данных с опозданием.
ruleName -> (строка)
ruleConfiguration -> (структура)
Информация, необходимая для настройки правила обработки данных с опозданием.
deltaTimeSessionWindowConfiguration -> (структура)
Информация, необходимая для настройки временного окна сессии Delta time.
timeoutInMinutes -> (целое число)
Интервал времени. Можно использовать timeoutInMinutes, чтобы IoT Analytics мог объединять уведомления об опоздании данных, сгенерированные с момента последнего выполнения. IoT Analytics отправляет одну партию уведомлений в Amazon CloudWatch Events за один раз.
Дополнительную информацию о написании выражения временной метки см. в разделе «Функции и операторы дат и времени» в документации Presto 0.172.
Сокращенная синтаксическая запись:
ruleName=string,ruleConfiguration={deltaTimeSessionWindowConfiguration={timeoutInMinutes=integer}} ...
Синтаксис JSON:
[
{
"ruleName": "string",
"ruleConfiguration": {
"deltaTimeSessionWindowConfiguration": {
"timeoutInMinutes": integer
}
}
}
...
]
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной JSON-строки. JSON-строка соответствует формату, указанному в --generate-cli-skeleton. Если на командной строке предоставлены другие аргументы, эти значения переопределят значения, предоставленные в JSON. Невозможно передавать произвольные двоичные значения с помощью значения, предоставленного в JSON, так как строка будет интерпретирована буквально. Это может не быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса API. Если предоставлено значение по умолчанию или значение input, выводит пример входного JSON, который может быть использован в качестве аргумента для --cli-input-json. Аналогично, если предоставлено yaml-input, он выведет пример входного YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, оно проверяет входные данные команд и возвращает пример выходного JSON для этой команды. Сгенерированный JSON-скелет нестабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Общие параметры
--debug (булево)
Включить отладку логирования.
--endpoint-url (строка)
Переопределить URL по умолчанию команды указанным URL.
--no-verify-ssl (булево)
По умолчанию AWS CLI использует SSL при общении с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет поведение проверки SSL-сертификатов по умолчанию.
--no-paginate (булево)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI сделает только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования выходных данных команд.
- json
- текст
- таблица
- yaml
- yaml-поток
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла учетных данных.
--region (строка)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/отключить вывод цвета.
- включено
- выключено
- автоматически
--no-sign-request (булево)
Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл сертификатов CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и без таймаута. Значение по умолчанию — 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения к сокету в секундах. Если значение установлено в 0, подключение к сокету будет блокирующим и без таймаута. Значение по умолчанию — 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как строка в кодировке base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, соответствующего двоичному блоку, fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (булево)
Отключить кли-пейджер для вывода.
--cli-auto-prompt (булево)
Автоматически запрашивать параметры ввода CLI.
--no-cli-auto-prompt (булево)
Отключить автоматический запрос параметров ввода CLI.
Примеры
Примечание
Для использования следующих примеров вам необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве «Начало работы» в руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования, похожие на Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. См. Использование кавычек со строками в руководстве пользователя AWS CLI.
Создание набора данных
Следующий create-dataset пример создает набор данных. Набор данных хранит данные, полученные из хранилища данных с помощью queryAction (запрос SQL) или containerAction (выполнение контейнеризованного приложения). Эта операция создает каркас набора данных. Вы можете заполнить набор данных вручную, вызвав CreateDatasetContent, или автоматически в соответствии с trigger, который вы укажете.
aws iotanalytics create-dataset \
--cli-input-json file://create-dataset.json
Содержимое create-dataset.json:
{
"datasetName": "mydataset",
"actions": [
{
"actionName": "myDatasetAction",
"queryAction": {
"sqlQuery": "SELECT * FROM mydatastore"
}
}
],
"retentionPeriod": {
"unlimited": true
},
"tags": [
{
"key": "Environment",
"value": "Production"
}
]
}
Вывод:
{
"datasetName": "mydataset",
"retentionPeriod": {
"unlimited": true
},
"datasetArn": "arn:aws:iotanalytics:us-west-2:123456789012:dataset/mydataset"
}
Дополнительную информацию см. в разделе CreateDataset в справочнике по API AWS IoT Analytics.
Вывод
datasetName -> (строка)
datasetArn -> (строка)
retentionPeriod -> (структура)
Сколько дней содержимое набора данных сохраняется для набора данных.
unlimited -> (булево)
numberOfDays -> (целое число)
unlimited должен быть false.
© Copyright 2025, Amazon Web Services. Created using Sphinx.