Connexions d’AWS Glue Streaming
Les sections suivantes fournissent des informations relatives à l’utilisation des connexions dans AWS Glue Streaming.
Utilisation des connexions Kafka
Vous pouvez utiliser une connexion Kafka pour lire et écrire dans des flux de données Kafka à l’aide d’informations stockées dans une table de catalogue de données ou en fournissant des informations permettant d’accéder directement au flux de données. La connexion prend en charge un cluster Kafka ou un cluster Amazon Managed Streaming for Apache Kafka. Vous pouvez lire les informations de Kafka dans un DataFrame Spark, puis les convertir en DynamicFrame AWS Glue. Vous pouvez écrire des DynamicFrames dans Kafka au format JSON. Si vous accédez directement au flux de données, utilisez ces options pour fournir des informations sur la façon d'accéder au flux de données.
Si vous utilisez getCatalogSource ou create_data_frame_from_catalog pour consommer des enregistrements à partir d’une source de streaming Kafka, ou getCatalogSink ou write_dynamic_frame_from_catalog pour écrire des enregistrements dans Kafka, et que la tâche dispose des informations relatives à la base de données Data Catalog et au nom de la table, et peut les utiliser pour obtenir certains paramètres de base pour la lecture à partir de la source de streaming Kafka. Si vous utilisez getSource, getCatalogSink, getSourceWithFormat, getSinkWithFormat, createDataFrameFromOptions, create_data_frame_from_options ou write_dynamic_frame_from_catalog, vous devez spécifier ces paramètres de base à l’aide des options de connexion décrites ici.
Vous pouvez spécifier les options de connexion pour Kafka à l’aide des arguments suivants pour les méthodes spécifiées dans la classe GlueContext.
-
Scala
-
connectionOptions: utiliser avecgetSource,createDataFrameFromOptions,getSink -
additionalOptions: utiliser avecgetCatalogSource,getCatalogSink -
options: utiliser avecgetSourceWithFormat,getSinkWithFormat
-
-
Python
-
connection_options: utiliser aveccreate_data_frame_from_options,write_dynamic_frame_from_options -
additional_options: utiliser aveccreate_data_frame_from_catalog,write_dynamic_frame_from_catalog -
options: utiliser avecgetSource,getSink
-
Pour les remarques et les restrictions concernant les tâches ETL de streaming, consultez Restrictions et notes sur ETL en streaming.
Rubriques
Configurer Kafka
Il n'y a aucun prérequis AWS pour se connecter aux flux Kafka disponibles sur Internet.
Vous pouvez créer une connexion AWS Glue Kafka pour gérer vos informations d'identification. Pour plus d’informations, consultez Création d’une connexion AWS Glue pour un flux de données Apache Kafka. Dans la configuration de votre tâche AWS Glue, indiquez connectionName en tant que connexion réseau supplémentaire, puis, dans votre appel de méthode, indiquez connectionName au paramètre connectionName.
Dans certains cas, vous devrez configurer des prérequis supplémentaires :
-
Si vous utilisez Amazon Managed Streaming pour Apache Kafka avec l'authentification IAM, vous aurez besoin d'une configuration IAM appropriée.
-
Si vous utilisez Amazon Managed Streaming pour Apache Kafka avec un Amazon VPC, vous aurez besoin d'une configuration Amazon VPC appropriée. Vous devez créer une connexion AWS Glue qui fournit les informations de connexion Amazon VPC. Vous aurez besoin de la configuration de votre tâche pour inclure la connexion AWS Glue en tant que connexion réseau supplémentaire.
Pour plus d'informations sur les prérequis de la tâche ETL de streaming, consultez Tâches ETL en streaming dans AWS Glue.
Exemple : lecture à partir de flux Kafka
Utilisez conjointement avec forEachBatch.
Exemple pour la source de streaming Kafka :
kafka_options = { "connectionName": "ConfluentKafka", "topicName": "kafka-auth-topic", "startingOffsets": "earliest", "inferSchema": "true", "classification": "json" } data_frame_datasource0 = glueContext.create_data_frame.from_options(connection_type="kafka", connection_options=kafka_options)
Exemple : écriture dans les flux Kafka
Exemples pour écrire dans Kafka :
Exemple avec la méthode getSink :
data_frame_datasource0 = glueContext.getSink( connectionType="kafka", connectionOptions={ JsonOptions("""{ "connectionName": "ConfluentKafka", "classification": "json", "topic": "kafka-auth-topic", "typeOfData": "kafka"} """)}, transformationContext="dataframe_ApacheKafka_node1711729173428") .getDataFrame()
Exemple avec la méthode write_dynamic_frame.from_options :
kafka_options = { "connectionName": "ConfluentKafka", "topicName": "kafka-auth-topic", "classification": "json" } data_frame_datasource0 = glueContext.write_dynamic_frame.from_options(connection_type="kafka", connection_options=kafka_options)
Référence des options de connexion de Kafka
Lors de la lecture, utilisez les options de connexion suivantes avec "connectionType": "kafka" :
-
"bootstrap.servers"(obligatoire) une liste d'URL de serveur d'amorçage, par exemple, en tant queb-1.vpc-test-2.o4q88o.c6.kafka.us-east-1.amazonaws.com:9094. Cette option doit être spécifiée dans l'appel d'API ou définie dans les métadonnées de la table dans le catalogue de données. -
"security.protocol"(Obligatoire) Le protocole utilisé pour communiquer avec les agents. Les valeurs possibles sont"SSL"ou"PLAINTEXT". -
"topicName": (requis) liste de rubriques séparées par des virgules auxquelles s'abonner. Vous devez spécifier un seul et unique élément parmi"topicName","assign"ou"subscribePattern". -
"assign": (requis) chaîne JSON indiquant leTopicPartitionsspécifique à utiliser. Vous devez spécifier un seul et unique élément parmi"topicName","assign"ou"subscribePattern".Exemple : '{"topicA":[0,1],"topicB":[2,4]}'
-
"subscribePattern": (obligatoire) chaîne d'expression rationnelle Java qui identifie la liste de rubriques à laquelle vous souhaitez vous abonner. Vous devez spécifier un seul et unique élément parmi"topicName","assign"ou"subscribePattern".Exemple : 'topic.*'
-
"classification": (obligatoire) le format de fichier utilisé par les données de l'enregistrement. Obligatoire, sauf s'il est fourni par le catalogue de données. -
"delimiter": (facultatif) le séparateur de valeurs utilisé lorsqueclassificationest CSV. La valeur par défaut est «,». -
"startingOffsets": (facultatif) position de départ dans la rubrique Kafka à partir de laquelle lire les données. Les valeurs possibles sont"earliest"ou"latest". La valeur par défaut est"latest". -
"startingTimestamp": (facultatif, pris en charge uniquement pour la version AWS Glue 4.0 ou ultérieure) l'horodatage de l'enregistrement dans la rubrique Kafka à partir de laquelle lire les données. La valeur possible est une chaîne d'horodatage au format UTC dans le modèleyyyy-mm-ddTHH:MM:SSZ(oùZreprésente un décalage de fuseau horaire UTC avec un +/-. Par exemple : « 2023-04-04T08:00:00-04:00 »).Remarque : seule l'une des propriétés « startingOffsets » ou « startingTimestamp » peut être présente dans la liste des options de connexion du script de streaming AWS Glue. Inclure ces deux propriétés entraînera l'échec de la tâche.
-
"endingOffsets": (facultatif) point de fin lorsqu'une requête par lots est terminée. Les valeurs possibles sont"latest"ou une chaîne JSON qui spécifie un décalage de fin pour chaqueTopicPartition.Pour la chaîne JSON, le format est
{"topicA":{"0":23,"1":-1},"topicB":{"0":-1}}. La valeur-1en tant que décalage représente"latest". -
"pollTimeoutMs": (facultatif) délai d'attente en millisecondes pour interroger les données de Kafka dans les exécuteurs de tâches Spark. La valeur par défaut est600000. -
"numRetries": (facultatif) nombre de nouvelles tentatives avant de ne pas récupérer les décalages Kafka. La valeur par défaut est3. -
"retryIntervalMs": (facultatif) temps d'attente en millisecondes avant d'essayer de récupérer les décalages Kafka. La valeur par défaut est10. -
"maxOffsetsPerTrigger": (facultatif) limite de taux sur le nombre maximal de décalages qui sont traités par intervalle de déclenchement. Le nombre total spécifié de décalages est réparti proportionnellement entre lestopicPartitionsdes différents volumes. La valeur par défaut est null, ce qui signifie que le consommateur lit tous les décalages jusqu'au dernier décalage connu. -
"minPartitions": (facultatif) nombre minimum de partitions à lire à partir de Kafka. La valeur par défaut est nulle, ce qui signifie que le nombre de partitions Spark est égal au nombre de partitions Kafka. -
"includeHeaders": (facultatif) indique s'il faut inclure les en-têtes Kafka. Lorsque l'option est définie sur « true » (vrai), la sortie de données contiendra une colonne supplémentaire nommée « glue_streaming_kafka_headers » avec le typeArray[Struct(key: String, value: String)]. La valeur définie par défaut est « false ». Cette option est disponible dans AWS Glue version 3.0 ou ultérieure. -
"schema": (requis lorsque inferSchema est défini sur false) schéma à utiliser pour traiter la charge utile. Si la classification estavro, le schéma fourni doit être au format de schéma Avro. Si la classification n'est pasavro, le schéma fourni doit être au format de schéma DDL.Voici quelques exemples de schémas.
-
"inferSchema": (facultatif) la valeur par défaut est « false ». S'il est défini sur « true », le schéma sera détecté lors de l'exécution à partir de la charge utile dansforeachbatch. -
"avroSchema": (obsolète) paramètre utilisé pour spécifier un schéma de données Avro lorsque le format Avro est utilisé. Ce paramètre est désormais obsolète. Utilisez le paramètreschema. -
"addRecordTimestamp": (facultatif) lorsque cette option est définie sur « true », la sortie de données contient une colonne supplémentaire nommée « __src_timestamp » qui indique l'heure à laquelle l'enregistrement correspondant est reçu par la rubrique. La valeur par défaut est « false ». Cette option est prise en charge dans AWS Glue version 4.0 ou ultérieure. -
"emitConsumerLagMetrics": (facultatif) lorsque l'option est définie sur « true », pour chaque lot, elle émet les métriques correspondant à la durée entre le plus ancien enregistrement reçu par la rubrique et le moment où il arrive dans AWS Glue vers CloudWatch. Le nom de la métrique est « glue.driver.streaming.maxConsumerLagInMs ». La valeur par défaut est « false ». Cette option est prise en charge dans AWS Glue version 4.0 ou ultérieure.
Lors de l’écriture, utilisez les options de connexion suivantes avec "connectionType": "kafka" :
-
"connectionName"(Obligatoire) Nom de la connexion AWS Glue utilisée pour se connecter au cluster Kafka (similaire à la source Kafka). -
"topic"(Obligatoire) Si une colonne de rubrique existe, sa valeur est utilisée comme rubrique lors de l’écriture de la ligne donnée dans Kafka, sauf si l’option de configuration de la rubrique est définie. C’est-à-dire que l’option de configurationtopicremplace la colonne de rubrique. -
"partition"(Facultatif) Si un numéro de partition valide est spécifié, cettepartitionsera utilisée lors de l’envoi de l’enregistrement.Si aucune partition n’est spécifiée, mais qu’une
keyest présente, une partition sera choisie en utilisant le hachage de la clé.Si ni une
key, ni unepartitionne sont présentes, une partition sera choisie en partitionnant de manière permanente ces modifications lorsqu’au moins des octets batch.size seront produits sur la partition. -
"key"(Facultatif) Utilisé pour le partitionnement sipartitionest nul. -
"classification"(Facultatif) Format de fichier utilisé par les données de l’enregistrement. Nous prenons uniquement en charge les formats JSON, CSV et Avro.Avec le format Avro, nous pouvons fournir une valeur avroSchema personnalisée avec laquelle il est possible de sérialiser, mais notez que cela doit également être fourni sur la source pour la désérialisation. Sinon, par défaut, le schéma Apache AvroSchema est utilisé pour la sérialisation.
En outre, vous pouvez optimiser le récepteur Kafka selon les besoins en mettant à jour les paramètres de configuration du producteur Kafka
Cependant, il existe une petite liste de refus d’options qui ne prendra pas effet. Pour plus d’informations, consultez Kafka specific configurations
Utilisation des connexions Kinesis
Vous pouvez utiliser une connexion Kinesis pour lire et écrire dans Amazon Kinesis Data Streams à l’aide d’informations stockées dans une table de catalogue de données ou en fournissant des informations permettant d’accéder directement au flux de données. Vous pouvez lire les informations de Kinesis dans un Spark DataFrame, puis les convertir en AWS Glue DynamicFrame. Vous pouvez écrire des DynamicFrames dans Kinesis au format JSON. Si vous accédez directement au flux de données, utilisez ces options pour fournir des informations sur la façon d'accéder au flux de données.
Si vous utilisez getCatalogSource ou create_data_frame_from_catalog pour consommer des enregistrements à partir d'une source de streaming Kinesis, la tâche dispose des informations relatives à la base de données Data Catalog et au nom de la table, et peut les utiliser pour obtenir certains paramètres de base pour la lecture à partir de la source de streaming Kinesis. Si vous utilisez getSource, getSourceWithFormat, createDataFrameFromOptions ou create_data_frame_from_options, vous devez spécifier ces paramètres de base à l'aide des options de connexion décrites ici.
Vous pouvez spécifier les options de connexion pour Kinesis à l'aide des arguments suivants pour les méthodes spécifiées dans la classe GlueContext.
-
Scala
-
connectionOptions: utiliser avecgetSource,createDataFrameFromOptions,getSink -
additionalOptions: utiliser avecgetCatalogSource,getCatalogSink -
options: utiliser avecgetSourceWithFormat,getSinkWithFormat
-
-
Python
-
connection_options: utiliser aveccreate_data_frame_from_options,write_dynamic_frame_from_options -
additional_options: utiliser aveccreate_data_frame_from_catalog,write_dynamic_frame_from_catalog -
options: utiliser avecgetSource,getSink
-
Pour les remarques et les restrictions concernant les tâches ETL de streaming, consultez Restrictions et notes sur ETL en streaming.
Configurer Kinesis
Pour vous connecter à un flux de données Kinesis dans le cadre d'une tâche AWS Glue Spark, vous avez besoin de certaines conditions préalables :
En cas de lecture, la tâche AWS Glue doit disposer d'autorisations IAM de niveau d'accès lecture pour le flux de données Kinesis.
En cas d'écriture, la tâche AWS Glue doit disposer d'autorisations IAM de niveau d'accès écriture pour le flux de données Kinesis.
Dans certains cas, vous devrez configurer des prérequis supplémentaires :
-
Si votre tâche AWS Glue est configurée avec des connexions réseau supplémentaires (généralement pour se connecter à d'autres jeux de données) et que l'une de ces connexions fournit des options de réseau Amazon VPC, cela indiquera à votre tâche de communiquer via Amazon VPC. Dans ce cas, vous devrez également configurer votre flux de données Kinesis pour qu'il communique via Amazon VPC. Vous pouvez le faire en créant un point de terminaison d'un VPC d'interface entre votre Amazon VPC et votre flux de données Kinesis. Pour plus d'informations, consultez Using Kinesis Data Streams with Interface VPC Endpoints.
-
Lorsque vous spécifiez Amazon Kinesis Data Streams dans un autre compte, vous devez configurer les rôles et les stratégies pour autoriser l'accès intercompte. Pour de plus amples informations, veuillez consulter la rubrique Exemple : Lire à partir d'un flux Kinesis dans un autre compte.
Pour plus d’informations sur les prérequis de la tâche ETL de streaming, consultez Tâches ETL en streaming dans AWS Glue.
Lecture depuis Kinesis
Exemple : lecture à partir de flux Kinesis
Utilisez conjointement avec forEachBatch.
Exemple pour la source de streaming Amazon Kinesis :
kinesis_options = { "streamARN": "arn:aws:kinesis:us-east-2:777788889999:stream/fromOptionsStream", "startingPosition": "TRIM_HORIZON", "inferSchema": "true", "classification": "json" } data_frame_datasource0 = glueContext.create_data_frame.from_options(connection_type="kinesis", connection_options=kinesis_options)
Écrire à Kinesis
Exemple : écriture dans Kinesis Streams
Utilisez conjointement avec forEachBatch. Votre DynamicFrame sera écrit dans le flux au format JSON. Si la tâche ne parvient pas à écrire après plusieurs tentatives, elle échoue. Par défaut, chaque enregistrement DynamicFrame est envoyé au flux Kinesis séparément. Vous pouvez configurer ce comportement à l'aide de la commande aggregationEnabled et des paramètres associés.
Exemple d'écriture sur Amazon Kinesis à partir d'une tâche de diffusion :
Paramètres de connexion Kinesis
Désigne des options de connexion à Amazon Kinesis Data Streams.
Utilisez les options de connexion suivantes pour les sources de données en streaming Kinesis :
-
"streamARN"(Obligatoire) Utilisé pour la lecture/l'écriture. ARN du flux de données Kinesis. -
"classification"(Obligatoire pour la lecture) Utilisé pour la lecture. Format de fichier utilisé par les données de l'enregistrement. Obligatoire, sauf s’il est fourni par le catalogue de données. -
"streamName": (facultatif) utilisé pour la lecture. Nom du flux de données Kinesis à partir duquel lire. Utilisé avecendpointUrl. -
"endpointUrl": (facultatif) utilisé pour la lecture. Par défaut : "https://kinesis.us-east-1.amazonaws.com". Point de terminaison AWS du flux Kinesis. Vous n'avez pas besoin de modifier ce paramètre, sauf si vous vous connectez à une région spéciale. -
"partitionKey": (facultatif) utilisé pour l'écriture. Clé de partition Kinesis utilisée lors de la production d'enregistrements. -
"delimiter": (facultatif) utilisé pour la lecture. Séparateur de valeurs utilisé lorsqueclassificationest CSV. La valeur par défaut est «,». -
"startingPosition": (facultatif) utilisé pour la lecture. La position de départ dans le flux de données Kinesis à partir duquel lire les données. Les valeurs possibles sont"latest","trim_horizon","earliest", ou une chaîne d'horodatage au format UTC dans le modèleyyyy-mm-ddTHH:MM:SSZ(oùZreprésente un décalage de fuseau horaire UTC avec un +/-. Par exemple : « 2023-04-04T08:00:00-04:00 »). La valeur par défaut est"latest". Remarque : la chaîne d'horodatage au format UTC pour"startingPosition"n'est prise en charge que pour la version 4.0 ou ultérieure d'AWS Glue. -
"failOnDataLoss": (facultatif) échec de la tâche si une partition active est manquante ou a expiré. La valeur par défaut est"false". -
"awsSTSRoleARN": (facultatif) utilisé pour la lecture/l'écriture. Amazon Resource Name (ARN) du rôle à assumer à l'aide d'AWS Security Token Service (AWS STS). Ce rôle doit disposer des autorisations nécessaires pour décrire ou lire des registres pour le flux de données Kinesis. Vous devez utiliser ce paramètre lorsque vous accédez à un flux de données dans un autre compte. Utilisez conjointement avec"awsSTSSessionName". -
"awsSTSSessionName": (facultatif) utilisé pour la lecture/l'écriture. Un identifiant de la séance assumant le rôle à l'aide d'AWS STS. Vous devez utiliser ce paramètre lorsque vous accédez à un flux de données dans un autre compte. Utilisez conjointement avec"awsSTSRoleARN". -
"awsSTSEndpoint": (facultatif) point de terminaison AWS STS à utiliser lors de la connexion à Kinesis avec un rôle assumé. Permet d'utiliser le point de terminaison AWS STS régional dans un VPC, ce qui n'est pas possible avec le point de terminaison global par défaut. -
"maxFetchTimeInMs": (facultatif) utilisé pour la lecture. Le temps maximal passé dans l’exécuteur de tâches pour lire des enregistrements du lot actuel à partir du flux de données Kinesis, exprimé en millisecondes (ms). Plusieurs appels d’APIGetRecordspeuvent être effectués pendant cette période. La valeur par défaut est1000. -
"maxFetchRecordsPerShard": (facultatif) utilisé pour la lecture. Nombre maximal d’enregistrements à récupérer par partition dans le flux de données Kinesis par microlot. Remarque : Le client peut dépasser cette limite si la tâche de streaming a déjà lu des enregistrements supplémentaires provenant de Kinesis (dans le même appel get-records). SimaxFetchRecordsPerSharddoit être strict, il doit être un multiple demaxRecordPerRead. La valeur par défaut est100000. -
"maxRecordPerRead": (facultatif) utilisé pour la lecture. Nombre maximal d'enregistrements à extraire du flux de données Kinesis dans chaque opérationgetRecords. La valeur par défaut est10000. -
"addIdleTimeBetweenReads": (facultatif) utilisé pour la lecture. Ajoute un délai entre deux opérationsgetRecordsconsécutives. La valeur par défaut est"False". Cette option n’est configurable que pour Glue version 2.0 et ultérieure. -
"idleTimeBetweenReadsInMs": (facultatif) utilisé pour la lecture. Délai minimum entre deux opérationsgetRecords, en ms. La valeur par défaut est1000. Cette option n’est configurable que pour Glue version 2.0 et ultérieure. -
"describeShardInterval": (facultatif) utilisé pour la lecture. Intervalle de temps minimum entre deux appels d'APIListShardspour que votre script envisage le repartitionnement. Pour plus d'informations, consultez Politiques de repartitionnement dans le Guide du développeur Amazon Kinesis Data Streams. La valeur par défaut est1s. -
"numRetries": (facultatif) utilisé pour la lecture. Le nombre maximal de nouvelles tentatives pour les demandes d'API Kinesis Data Streams. La valeur par défaut est3. -
"retryIntervalMs": (facultatif) utilisé pour la lecture. Le délai de réflexion (spécifié en ms) avant de réessayer l'appel d'API Kinesis Data Streams. La valeur par défaut est1000. -
"maxRetryIntervalMs": (facultatif) utilisé pour la lecture. Le délai d'attente maximal (spécifié en ms) entre deux tentatives d'appel d'API Kinesis Data Streams. La valeur par défaut est10000. -
"avoidEmptyBatches": (facultatif) utilisé pour la lecture. Évite de créer une tâche de micro-lot vide en vérifiant les données non lues dans le flux de données Kinesis avant le démarrage du lot. La valeur par défaut est"False". -
"schema": (obligatoire lorsque inferSchema est défini sur false) utilisé pour la lecture. Schéma à utiliser pour traiter la charge utile. Si la classification estavro, le schéma fourni doit être au format de schéma Avro. Si la classification n'est pasavro, le schéma fourni doit être au format de schéma DDL.Voici quelques exemples de schémas.
-
"inferSchema": (facultatif) utilisé pour la lecture. La valeur par défaut est « false ». S’il est défini sur « true », le schéma sera détecté lors de l’exécution à partir de la charge utile dansforeachbatch. -
"avroSchema": (obsolète) utilisé pour la lecture. Paramètre utilisé pour spécifier un schéma de données Avro lorsque le format Avro est utilisé. Ce paramètre est désormais obsolète. Utilisez le paramètreschema. -
"addRecordTimestamp": (facultatif) utilisé pour la lecture. Lorsque cette option est définie sur « true », la sortie de données contient une colonne supplémentaire nommée « __src_timestamp » qui indique l'heure à laquelle l'enregistrement correspondant est reçu par le flux. La valeur par défaut est « false ». Cette option est prise en charge dans AWS Glue version 4.0 ou ultérieure. -
"emitConsumerLagMetrics": (facultatif) utilisé pour la lecture. Lorsque cette option est définie sur « true », pour chaque lot, elle émet les métriques correspondant à la durée entre le plus ancien enregistrement reçu par le flux et le moment où il arrive dans AWS Glue vers CloudWatch. Le nom de la métrique est « glue.driver.streaming.maxConsumerLagInMs ». La valeur par défaut est « false ». Cette option est prise en charge dans AWS Glue version 4.0 ou ultérieure. -
"fanoutConsumerARN": (facultatif) utilisé pour la lecture. ARN d'un consommateur de flux Kinesis pour le flux spécifié dansstreamARN. Utilisé pour activer le mode diffusion améliorée pour votre connexion Kinesis. Pour plus d'informations sur la consommation d'un flux Kinesis avec diffusion améliorée, consultez Utilisation de la diffusion améliorée dans les tâches de streaming Kinesis. -
"recordMaxBufferedTime": (facultatif) utilisé pour l'écriture. Par défaut : 1 000 (ms). Durée maximale pendant laquelle un enregistrement est mis en mémoire tampon en attendant d'être écrit. -
"aggregationEnabled": (facultatif) utilisé pour l'écriture. Valeur par défaut : vraie. Spécifie si les enregistrements doivent être agrégés avant de les envoyer à Kinesis. -
"aggregationMaxSize": (facultatif) utilisé pour l'écriture. Par défaut : 51 200 (octets). Si un enregistrement est supérieur à cette limite, il contourne l'agrégateur. Remarque Kinesis impose une limite de 50 Ko à la taille des enregistrements. Si vous définissez ce paramètre au-delà de 50 Ko, les enregistrements surdimensionnés seront rejetés par Kinesis. -
"aggregationMaxCount": (facultatif) utilisé pour l'écriture. Par défaut : 4294967295. Nombre maximum de résultats à regrouper dans un enregistrement agrégé. -
"producerRateLimit": (facultatif) utilisé pour l'écriture. Par défaut : 150 (%). Limite le débit par partition envoyée par un seul producteur (votre tâche, par exemple), sous forme de pourcentage de la limite du backend. -
"collectionMaxCount": (facultatif) utilisé pour l'écriture. Par défaut : 500. Nombre maximum de résultats à regrouper dans une requête PutRecords. -
"collectionMaxSize": (facultatif) utilisé pour l'écriture. Par défaut : 5242880 (octets). Quantité maximale de données à envoyer avec une requête PutRecords.