[ aws . kinesisanalytics ]
create-application
Описание
Примечание
Данная документация предназначена для версии 1 API Amazon Kinesis Data Analytics, которая поддерживает только приложения SQL. Версия 2 API поддерживает SQL и Java приложения. Для получения дополнительной информации о версии 2, см. Документацию API Amazon Kinesis Data Analytics версии 2 .Создаёт приложение Amazon Kinesis Analytics. Вы можете настроить каждое приложение с одним входным потоковым источником, кодом приложения для обработки входных данных и до тремя местами назначения, куда Amazon Kinesis Analytics будет записывать выходные данные вашего приложения. Для обзора см. Как это работает .
В конфигурации ввода вы сопоставляете потоковый источник с потоком внутри приложения, который можно рассматривать как постоянно обновляемую таблицу. При сопоставлении вы должны указать схему для потока внутри приложения и сопоставить каждый столбец данных в потоке внутри приложения с элементом данных в потоковом источнике.
Код вашего приложения — это одна или несколько SQL-команд, которые считывают входные данные, преобразуют их и генерируют выходные данные. Код приложения может создавать один или несколько SQL-артефактов, таких как SQL-потоки или насосы.
В конфигурации вывода вы можете настроить приложение таким образом, чтобы записывать данные из потоков внутри приложения, созданных в ваших приложениях, до трёх мест назначения.
Для чтения данных из вашего входного потока или записи данных в выходные потоки Amazon Kinesis Analytics нуждается в ваших разрешениях. Вы предоставляете эти разрешения, создавая роли IAM. Для этой операции требуются разрешения на выполнение действия kinesisanalytics:CreateApplication.
Для ознакомительных упражнений по созданию приложения Amazon Kinesis Analytics см. Начало работы .
См. также: Документация AWS API
Синопсис
create-application
--application-name <value>
[--application-description <value>]
[--inputs <value>]
[--outputs <value>]
[--cloud-watch-logging-options <value>]
[--application-code <value>]
[--tags <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]
Параметры
--application-name (строка)
sample-app).--application-description (строка)
--inputs (список)
Используйте этот параметр для настройки входных данных приложения.
Вы можете настроить приложение для получения входных данных из одного потокового источника. В этой конфигурации вы сопоставляете этот потоковый источник с потоком внутри приложения, который создаётся. Ваш код приложения может затем запросить поток внутри приложения как таблицу (можно представить как постоянно обновляемую таблицу).
Для потокового источника вы предоставляете его Amazon Resource Name (ARN) и формат данных в потоке (например, JSON, CSV и т. д.). Также необходимо предоставить роль IAM, которую Amazon Kinesis Analytics может использовать для чтения этого потока от вашего имени.
Для создания потока внутри приложения необходимо указать схему для преобразования данных в структурированный формат, используемый в SQL. В схеме вы указываете необходимое сопоставление элементов данных в потоковом источнике с колонками записей в потоке внутри приложения.
(структура)
При настройке входных данных приложения вы указываете потоковый источник, имя потока внутри приложения, которое создаётся, и сопоставление между ними. Для получения дополнительной информации см. Настройка входных данных приложения.
NamePrefix -> (строка)
InputParallelism) потоков внутри приложения с именами «MyInApplicationStream_001», «MyInApplicationStream_002» и так далее.InputProcessingConfiguration -> (структура)
InputProcessingConfiguration для входных данных. Обработчик входных данных преобразует записи по мере их получения из потока перед выполнением SQL-кода приложения. В настоящее время единственная доступная конфигурация обработки входных данных — InputLambdaProcessor.
InputLambdaProcessor -> (структура)
InputLambdaProcessor, используемый для предварительной обработки записей в потоке перед обработкой кодом вашего приложения.
ResourceARN -> (строка)
ARN функции AWS Lambda, которая обрабатывает записи в потоке.
Примечание
Чтобы указать более раннюю версию функции Lambda, чем последнюю, укажите версию функции Lambda в ARN функции Lambda. Для получения дополнительной информации об ARN Lambda см. Примеры ARN: AWS LambdaRoleARN -> (строка)
KinesisStreamsInput -> (структура)
Если потоковым источником является поток Amazon Kinesis, идентифицирует Amazon Resource Name (ARN) потока и роль IAM, которая позволяет Amazon Kinesis Analytics получить доступ к потоку от вашего имени.
Примечание: Требуется либо KinesisStreamsInput, либо KinesisFirehoseInput.
ResourceARN -> (строка)
RoleARN -> (строка)
KinesisFirehoseInput -> (структура)
Если потоковым источником является поток доставки Amazon Kinesis Firehose, идентифицирует ARN потока доставки и роль IAM, которая позволяет Amazon Kinesis Analytics получить доступ к потоку от вашего имени.
Примечание: Требуется либо KinesisStreamsInput, либо KinesisFirehoseInput.
ResourceARN -> (строка)
RoleARN -> (строка)
InputParallelism -> (структура)
Описывает количество потоков внутри приложения для создания.
Данные из вашего источника направляются в эти потоки внутри приложения.
(см. Настройка входных данных приложения).
Count -> (целое число)
InputSchema -> (структура)
Описывает формат данных в потоковом источнике и то, как каждый элемент данных сопоставляется с соответствующими столбцами в потоке внутри приложения, который создаётся.
Также используется для описания формата источника справочных данных.
RecordFormat -> (структура)
Указывает формат записей в потоковом источнике.
RecordFormatType -> (строка)
MappingParameters -> (структура)
При настройке входных данных приложения во время создания или обновления приложения предоставляет дополнительную информацию о сопоставлении, специфичную для формата записей (например, JSON, CSV или разделенные разделителями поля записей) в потоковом источнике.
JSONMappingParameters -> (структура)
Предоставляет дополнительную информацию о сопоставлении, когда формат записей — JSON.
RecordRowPath -> (строка)
CSVMappingParameters -> (структура)
Предоставляет дополнительную информацию о сопоставлении, когда формат записей использует разделители (например, CSV).
RecordRowDelimiter -> (строка)
RecordColumnDelimiter -> (строка)
RecordEncoding -> (строка)
RecordColumns -> (список)
Список объектов RecordColumn.
(структура)
Описывает сопоставление каждого элемента данных в потоковом источнике с соответствующим столбцом в потоке внутри приложения.
Также используется для описания формата источника справочных данных.
Name -> (строка)
Mapping -> (строка)
JSON.SqlType -> (строка)
Синтаксис JSON:
[
{
"NamePrefix": "string",
"InputProcessingConfiguration": {
"InputLambdaProcessor": {
"ResourceARN": "string",
"RoleARN": "string"
}
},
"KinesisStreamsInput": {
"ResourceARN": "string",
"RoleARN": "string"
},
"KinesisFirehoseInput": {
"ResourceARN": "string",
"RoleARN": "string"
},
"InputParallelism": {
"Count": integer
},
"InputSchema": {
"RecordFormat": {
"RecordFormatType": "JSON"|"CSV",
"MappingParameters": {
"JSONMappingParameters": {
"RecordRowPath": "string"
},
"CSVMappingParameters": {
"RecordRowDelimiter": "string",
"RecordColumnDelimiter": "string"
}
}
},
"RecordEncoding": "string",
"RecordColumns": [
{
"Name": "string",
"Mapping": "string",
"SqlType": "string"
}
...
]
}
}
...
]
--outputs (список)
Вы можете настроить выходные данные приложения для записи данных из любого из потоков внутри приложения в до трех пунктов назначения.
Этими пунктами назначения могут быть потоки Amazon Kinesis, потоки доставки Amazon Kinesis Firehose, пункты назначения AWS Lambda или любое их сочетание.
В конфигурации вы указываете имя потока внутри приложения, Amazon Resource Name (ARN) потока назначения или функции Lambda и формат для записи данных. Также необходимо предоставить роль IAM, которую Amazon Kinesis Analytics может использовать для записи в целевой поток или функцию Lambda от вашего имени.
В конфигурации вывода вы также предоставляете ARN потока или функции Lambda. Для целевых потоков вы указываете формат данных в потоке (например, JSON, CSV). Также необходимо предоставить роль IAM, которую Amazon Kinesis Analytics может использовать для записи в поток или функцию Lambda от вашего имени.
(структура)
Описание конфигурации вывода приложения, в котором вы идентифицируете поток внутри приложения и пункт назначения, куда вы хотите записать данные потока внутри приложения. Пункт назначения может быть потоком Amazon Kinesis или потоком доставки Amazon Kinesis Firehose.
Для ограничений на количество пунктов назначения, в которые приложение может записывать данные, и других ограничений см. Ограничения.
Name -> (строка)
KinesisStreamsOutput -> (структура)
Идентифицирует поток Amazon Kinesis в качестве пункта назначения.
ResourceARN -> (строка)
RoleARN -> (строка)
KinesisFirehoseOutput -> (структура)
Идентифицирует поток доставки Amazon Kinesis Firehose в качестве пункта назначения.
ResourceARN -> (строка)
RoleARN -> (строка)
LambdaOutput -> (структура)
Идентифицирует функцию AWS Lambda в качестве пункта назначения.
ResourceARN -> (строка)
Amazon Resource Name (ARN) целевой функции Lambda для записи.
Примечание
Чтобы указать более раннюю версию функции Lambda, чем последнюю, укажите версию функции Lambda в ARN функции Lambda. Для получения дополнительной информации об ARN Lambda см. Примеры ARN: AWS LambdaRoleARN -> (строка)
DestinationSchema -> (структура)
Описывает формат данных при записи записей в пункт назначения. Для получения дополнительной информации см. Настройка вывода приложения.
RecordFormatType -> (строка)
Сокращённый синтаксис:
Name=string,KinesisStreamsOutput={ResourceARN=string,RoleARN=string},KinesisFirehoseOutput={ResourceARN=string,RoleARN=string},LambdaOutput={ResourceARN=string,RoleARN=string},DestinationSchema={RecordFormatType=string} ...
Синтаксис JSON:
[
{
"Name": "string",
"KinesisStreamsOutput": {
"ResourceARN": "string",
"RoleARN": "string"
},
"KinesisFirehoseOutput": {
"ResourceARN": "string",
"RoleARN": "string"
},
"LambdaOutput": {
"ResourceARN": "string",
"RoleARN": "string"
},
"DestinationSchema": {
"RecordFormatType": "JSON"|"CSV"
}
}
...
]
--cloud-watch-logging-options (список)
Используйте этот параметр для настройки потока журнала CloudWatch для отслеживания ошибок конфигурации приложения. Для получения дополнительной информации см. Работа с журналами Amazon CloudWatch.
(структура)
Описание параметров ведения журнала CloudWatch, включая Amazon Resource Name (ARN) потока журнала и ARN роли.
LogStreamARN -> (строка)
RoleARN -> (строка)
PutLogEvents.Сокращённый синтаксис:
LogStreamARN=string,RoleARN=string ...
Синтаксис JSON:
[
{
"LogStreamARN": "string",
"RoleARN": "string"
}
...
]
--application-code (строка)
Одна или несколько SQL-команд, которые считывают входные данные, преобразуют их и генерируют выходные данные. Например, вы можете написать SQL-команду, которая считывает данные из одного потока приложения, вычисляет среднее значение кликов по рекламе по поставщику и вставляет полученные строки в другой поток приложения с помощью насосов. Дополнительную информацию о типичном шаблоне см. в разделе Код приложения .
Вы можете предоставить такую серию SQL-команд, где выходные данные одной команды могут использоваться в качестве входных данных для следующей команды. Вы храните промежуточные результаты, создавая потоки и насосы приложения.
Обратите внимание, что код приложения должен создавать потоки с именами, указанными в Outputs . Например, если ваш Outputs определяет выходные потоки с именами ExampleOutputStream1 и ExampleOutputStream2 , то код вашего приложения должен создать эти потоки.
--tags (список)
Список одного или нескольких тегов для присвоения приложению. Тег — это пара ключ-значение, которая идентифицирует приложение. Обратите внимание, что максимальное количество тегов приложения включает системные теги. Максимальное количество пользовательских тегов приложения составляет 50. Дополнительную информацию см. в разделе Использование тегов .
(структура)
Пара ключ-значение (значение необязательно), которую вы можете определить и назначить ресурсам AWS. Если вы укажете тег, который уже существует, значение тега заменится значением, указанным в запросе. Обратите внимание, что максимальное количество тегов приложения включает системные теги. Максимальное количество пользовательских тегов приложения составляет 50. Дополнительную информацию см. в разделе Использование тегов .
Ключ -> (строка)
Значение -> (строка)
Сокращенная синтаксическая запись:
Key=string,Value=string ...
Синтаксис JSON:
[
{
"Key": "string",
"Value": "string"
}
...
]
--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
- text
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для использования при фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла учетных данных.
--region (строка)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/отключить цветной вывод.
- on
- off
- auto
--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 для вывода.
--cli-auto-prompt (булево)
Автоматически запрашивать параметры входных данных CLI.
--no-cli-auto-prompt (булево)
Отключить автоматическое запросы параметров входных данных CLI.
Вывод
ApplicationSummary -> (структура)
В ответ на ваш запрос CreateApplication Amazon Kinesis Analytics возвращает ответ с кратким описанием созданного приложения, включая Amazon Resource Name (ARN) приложения, имя и состояние.
ApplicationName -> (строка)
ApplicationARN -> (строка)
ApplicationStatus -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.