Spec-Zone.ru › AWS CLI v2

[ 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 -> (строка)

Строка SQL-запроса.

filters -> (список)

Предфильтры, применяемые к данным сообщения.

(структура)

Информация, используемая для фильтрации данных сообщений, чтобы разделить их по временным рамкам их прибытия.

deltaTime -> (структура)

Используется для ограничения данных сообщениями, которые поступили после последнего выполнения действия.

offsetSeconds -> (целое число)

Количество секунд предполагаемой задержки данных сообщений. При создании содержимого набора данных, используя данные сообщений из указанного временного интервала, некоторые данные сообщений могут всё ещё находиться в процессе передачи при начале обработки, и, поэтому, не прибудут вовремя для обработки. Используйте этот параметр, чтобы учесть время передачи данных сообщений, чтобы данные, которые не были обработаны из предыдущего временного интервала, были включены в следующий интервал. В противном случае, пропущенные данные сообщений будут исключены из обработки во время следующего интервала тоже, потому что их временная метка помещает их в предыдущий временной интервал.

timeExpression -> (строка)

Выражение, по которому можно определить время данных сообщения. Это может быть имя поля временной метки или SQL-выражение, используемое для получения времени создания данных сообщения.

containerAction -> (структура)

Информация, которая позволяет системе запускать контейнизированное приложение для создания содержимого набора данных. Приложение должно находиться в контейнере Docker вместе со всеми необходимыми библиотеками поддержки.

image -> (строка)

ARN контейнера Docker, хранящегося в вашем аккаунте. Контейнер Docker содержит приложение и необходимые библиотеки поддержки и используется для генерации содержимого набора данных.

executionRoleArn -> (строка)

ARN роли, которая даёт системе разрешение на доступ к необходимым ресурсам для запуска 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 -> (строка)

URI расположения, где хранится содержимое набора данных, обычно URI файла в ведре S3.

Синтаксис 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 -> (строка)

Выражение, определяющее, когда запускать обновление. Для получения дополнительной информации см. Выражения расписания для правил в руководстве по Amazon CloudWatch Events.

dataset -> (структура)

Набор данных, создание содержимого которого запускает создание содержимого данного набора данных.

name -> (строка)

Имя набора данных, чья генерация содержимого запускает генерацию содержимого нового набора данных.

Сокращённый синтаксис:

schedule={expression=string},dataset={name=string} ...

Синтаксис JSON:

[
  {
    "schedule": {
      "expression": "string"
    },
    "dataset": {
      "name": "string"
    }
  }
  ...
]

--content-delivery-rules (список)

При создании содержимого набора данных, оно доставляется в указанные здесь пункты назначения.

(структура)

При создании содержимого набора данных, оно доставляется в указанный пункт назначения.

entryName -> (строка)

Имя записи правил доставки содержимого набора данных.

destination -> (структура)

Пункт назначения, в который доставляется содержимое набора данных.

iotEventsDestinationConfiguration -> (структура)

Конфигурационная информация для доставки содержимого набора данных в IoT Events.

inputName -> (строка)

Имя ввода IoT Events, в который доставляется содержимое набора данных.

roleArn -> (строка)

ARN роли, которая предоставляет IoT Analytics разрешение на доставку содержимого набора данных в ввод IoT Events.

s3DestinationConfiguration -> (структура)

Конфигурационная информация для доставки содержимого набора данных в Amazon S3.

bucket -> (строка)

Имя ведра S3, в которое доставляется содержимое набора данных.

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 -> (строка)

Имя таблицы в вашем каталоге данных Glue, используемой для выполнения операций ETL. Таблица каталога данных Glue содержит разнесённые данные и описания источников и целей данных.

databaseName -> (строка)

Имя базы данных в вашем каталоге данных Glue, в которой расположена таблица. База данных каталога данных Glue содержит метаданные таблиц.

roleArn -> (строка)

ARN роли, которая предоставляет IoT Analytics разрешение на взаимодействие с вашими ресурсами Amazon S3 и Glue.

Синтаксис 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 -> (логическое значение)

Если true, данные сообщений хранятся неограниченно.

numberOfDays -> (целое число)

Количество дней, в течение которых хранятся данные сообщений. Параметр unlimited должен быть false.

Сокращённый синтаксис:

unlimited=boolean,numberOfDays=integer

Синтаксис JSON:

{
  "unlimited": true|false,
  "numberOfDays": integer
}

--versioning-configuration (структура)

Необязательно. Сколько версий содержимого набора данных хранится. Если не указано или установлено значение null, только последняя версия плюс последняя успешная версия (если они отличаются) сохраняются в течение периода, указанного параметром retentionPeriod. Дополнительная информация см. в разделе "Хранение нескольких версий наборов данных IoT Analytics" в руководстве пользователя по IoT Analytics.

unlimited -> (логическое значение)

Если true, хранятся неограниченные версии содержимого набора данных.

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 -> (строка)

ARN набора данных.

retentionPeriod -> (структура)

Сколько дней содержимое набора данных сохраняется для набора данных.

unlimited -> (булево)

Если true, данные сообщений хранятся неопределенно долго.

numberOfDays -> (целое число)

Количество дней, в течение которых данные сообщений сохраняются. Параметр unlimited должен быть false.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API