Après mûre réflexion, nous avons décidé de mettre fin à Amazon Kinesis Data Analytics SQL pour les applications en deux étapes :
1. À compter du 15 octobre 2025, vous ne pourrez plus créer de nouveaux Kinesis Data Analytics SQL pour les applications.
2. Nous supprimerons vos candidatures à compter du 27 janvier 2026. Vous ne serez pas en mesure de démarrer ou d'utiliser votre Amazon Kinesis Data Analytics SQL pour les applications. Support ne sera plus disponible pour Amazon Kinesis Data Analytics à partir SQL de cette date. Pour de plus amples informations, veuillez consulter Arrêt d'Amazon Kinesis Data Analytics SQL pour applications.
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
CreateApplication
Note
Cette documentation est destinée à la version 1 de l’API Amazon Kinesis Data Analytics, qui est compatible uniquement avec les applications SQL. La version 2 de l’API est compatible avec les applications SQL et Java. Pour plus d’informations sur la version 2, consultez la documentation de l’API Amazon Kinesis Data Analytics V2.
Crée une application Amazon Kinesis Analytics. Vous pouvez configurer chaque application avec une source de streaming en entrée, un code d’application pour traiter l’entrée et jusqu’à trois destinations dans lesquelles vous souhaitez qu’Amazon Kinesis Analytics écrive les données de sortie de votre application. Pour un aperçu, consultez la section Fonctionnement.
Dans la configuration d’entrée, vous mappez la source de streaming à un flux intégré à l’application, que vous pouvez considérer comme une table constamment mise à jour. Dans le mappage, vous devez fournir un schéma du flux intégré à l’application et mapper chaque colonne de données du flux intégré à un élément de données de la source de streaming.
Le code de votre application correspond à une ou plusieurs instructions SQL qui lisent les données d’entrée, les transforment et génèrent une sortie. Le code de votre application peut créer un ou plusieurs artefacts SQL tels que des flux ou des pompes SQL.
Dans la configuration de sortie, vous pouvez configurer l’application pour écrire des données à partir de flux intégrés à l’application créés dans vos applications vers un maximum de trois destinations.
Pour lire les données de votre flux source ou écrire des données dans des flux de destination, Amazon Kinesis Analytics a besoin de vos autorisations. Vous pouvez accorder ces autorisations en créant des rôles IAM. Cette opération exige des autorisations pour exécuter l'action kinesisanalytics:CreateApplication
.
Pour obtenir des exercices d’introduction à la création d’une application Amazon Kinesis Analytics, consultez Mise en route.
Syntaxe de la requête
{
"ApplicationCode": "string
",
"ApplicationDescription": "string
",
"ApplicationName": "string
",
"CloudWatchLoggingOptions": [
{
"LogStreamARN": "string
",
"RoleARN": "string
"
}
],
"Inputs": [
{
"InputParallelism": {
"Count": number
},
"InputProcessingConfiguration": {
"InputLambdaProcessor": {
"ResourceARN": "string
",
"RoleARN": "string
"
}
},
"InputSchema": {
"RecordColumns": [
{
"Mapping": "string
",
"Name": "string
",
"SqlType": "string
"
}
],
"RecordEncoding": "string
",
"RecordFormat": {
"MappingParameters": {
"CSVMappingParameters": {
"RecordColumnDelimiter": "string
",
"RecordRowDelimiter": "string
"
},
"JSONMappingParameters": {
"RecordRowPath": "string
"
}
},
"RecordFormatType": "string
"
}
},
"KinesisFirehoseInput": {
"ResourceARN": "string
",
"RoleARN": "string
"
},
"KinesisStreamsInput": {
"ResourceARN": "string
",
"RoleARN": "string
"
},
"NamePrefix": "string
"
}
],
"Outputs": [
{
"DestinationSchema": {
"RecordFormatType": "string
"
},
"KinesisFirehoseOutput": {
"ResourceARN": "string
",
"RoleARN": "string
"
},
"KinesisStreamsOutput": {
"ResourceARN": "string
",
"RoleARN": "string
"
},
"LambdaOutput": {
"ResourceARN": "string
",
"RoleARN": "string
"
},
"Name": "string
"
}
],
"Tags": [
{
"Key": "string
",
"Value": "string
"
}
]
}
Paramètres de demande
Cette demande accepte les données suivantes au format JSON.
- ApplicationCode
-
Une ou plusieurs instructions SQL qui lisent les données d'entrée, les transforment et génèrent une sortie. Par exemple, vous pouvez écrire une instruction SQL qui lit les données d'un flux intégré à l'application, génère une exécution moyenne du nombre de clics publicitaires par fournisseur et insère les lignes obtenues dans un autre flux intégré à l'application à l'aide de pompes. Pour plus d'informations sur le modèle classique, consultez Code d'application.
Vous pouvez fournir cette série d'instructions SQL où la sortie d'une instruction peut être utilisée comme l'entrée de la prochaine instruction. Vous stockez les résultats intermédiaires en créant des flux intégrés à l'application et des pompes.
Notez que le code d'application doit créer les flux avec des noms spécifiés dans les
Outputs
. Par exemple, si votre fluxOutputs
définit les flux de sortie nommésExampleOutputStream1
etExampleOutputStream2
, alors votre code d'application doit créer ces flux.Type : chaîne
Contraintes de longueur : longueur minimum de 0. Longueur maximale de 102400.
Obligatoire : non
- ApplicationDescription
-
Description résumée de l'application.
Type : chaîne
Contraintes de longueur : longueur minimum de 0. Longueur maximale de 1024.
Obligatoire : non
- ApplicationName
-
Nom de votre application Amazon Kinesis Analytics (par exemple,
sample-app
).Type : chaîne
Contraintes de longueur : Longueur minimum de 1. Longueur maximale de 128.
Modèle :
[a-zA-Z0-9_.-]+
Obligatoire : oui
- CloudWatchLoggingOptions
-
Utilisez ce paramètre pour configurer un flux de CloudWatch journal afin de surveiller les erreurs de configuration des applications. Pour plus d'informations, consultez la section Travailler avec Amazon CloudWatch Logs.
Type : tableau d’objets CloudWatchLoggingOption
Obligatoire : non
- Inputs
-
Utilisez ce paramètre pour configurer l'entrée de l'application.
Vous pouvez configurer votre application pour qu'elle reçoive une entrée provenant d'une source de streaming. Dans cette configuration, vous mappez cette source de streaming au flux intégré à l'application qui est créé. Votre code d'application peut interroger le flux intégré à l'application comme une table (vous pouvez la considérer comme une table mise à jour en permanence).
Pour la source de streaming, vous fournissez son ARN (Amazon Resource Name) et le format des données sur le flux (par exemple, JSON, CSV, etc.). Vous devez également fournir un rôle IAM qu'Amazon Kinesis Analytics peut endosser pour lire ce flux en votre nom.
Pour créer le flux intégré à l'application, vous devez spécifier un schéma pour transformer vos données en une version schématisée utilisée dans SQL. Dans le schéma, vous indiquez le mappage nécessaires des éléments de données dans la source de streaming, pour enregistrer des colonnes dans le flux intégré à l'application.
Type : tableau d’objets Input
Obligatoire : non
- Outputs
-
Vous pouvez configurer la sortie de l’application pour écrire des données à partir de n’importe quel flux intégré à l’application vers un maximum de trois destinations.
Ces destinations peuvent être des flux Amazon Kinesis, des flux de diffusion Amazon Kinesis Firehose, des destinations Lambda AWS ou une combinaison des trois.
Dans la configuration, vous spécifiez le nom du flux intégré à l’application, le flux de destination ou l’Amazon Resource Name (ARN) de la fonction Lambda, ainsi que le format à utiliser lors de l’écriture de données. Vous devez également fournir un rôle IAM qu’Amazon Kinesis Analytics peut endosser pour écrire dans le flux de destination ou la fonction Lambda en votre nom.
Dans la configuration de sortie, vous fournissez également le flux de sortie ou l’ARN de la fonction Lambda. Pour les destinations de flux, vous indiquez le format des données dans le flux (par exemple, JSON, CSV). Vous devez également fournir un rôle IAM qu’Amazon Kinesis Analytics peut endosser pour écrire dans le flux ou la fonction Lambda en votre nom.
Type : tableau d’objets Output
Obligatoire : non
- Tags
-
Liste d'une ou plusieurs balises à affecter à l'application. Une balise est une paire clé-valeur qui identifie une application. Notez que le nombre maximal de balises d'application inclut les balises système. Le nombre maximal de balises d'application définies par l'utilisateur est de 50. Pour plus d’informations, consultez la section Utilisation du balisage.
Type : tableau d’objets Tag
Membres du tableau : Nombre minimum de 1 élément. Nombre maximum de 200 éléments.
Obligatoire : non
Syntaxe de la réponse
{
"ApplicationSummary": {
"ApplicationARN": "string",
"ApplicationName": "string",
"ApplicationStatus": "string"
}
}
Eléments de réponse
Si l’action aboutit, le service renvoie une réponse HTTP 200.
Les données suivantes sont renvoyées au format JSON par le service.
- ApplicationSummary
-
En réponse à votre demande
CreateApplication
, Amazon Kinesis Analytics renvoie une réponse contenant un résumé de l’application créée, y compris l’Amazon Resource Name (ARN), le nom et le statut de l’application.Type : objet ApplicationSummary
Erreurs
- CodeValidationException
-
Le code d’application (requête) fourni par l’utilisateur n’est pas valide. Il peut s’agir d’une simple erreur de syntaxe.
Code d’état HTTP : 400
- ConcurrentModificationException
-
Exception envoyée suite à la modification simultanée d’une application. Par exemple, deux personnes tentent de modifier la même application en même temps.
Code d’état HTTP : 400
- InvalidArgumentException
-
La valeur du paramètre d’entrée spécifiée n’est pas valide.
Code d’état HTTP : 400
- LimitExceededException
-
Le nombre d’applications autorisées a été dépassé.
Code d’état HTTP : 400
- ResourceInUseException
-
L’application n’est pas disponible pour cette opération.
Code d’état HTTP : 400
- TooManyTagsException
-
Application créée avec trop de balises ou trop de balises ajoutées à une application. Notez que le nombre maximal de balises d'application inclut les balises système. Le nombre maximal de balises d'application définies par l'utilisateur est de 50.
Code d’état HTTP : 400
- UnsupportedOperationException
-
La requête a été rejetée car un paramètre spécifié n’est pas pris en charge ou parce qu’une ressource spécifiée n’est pas valide pour cette opération.
Code d’état HTTP : 400
consultez aussi
Pour plus d'informations sur l'utilisation de cette API dans l'un des AWS SDK spécifiques au langage, consultez les pages suivantes :