Écrire sur Amazon Data Firehose avec le SDK AWS - Amazon Data Firehose

Amazon Data Firehose était auparavant connu sous le nom d'Amazon Kinesis Data Firehose

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.

Écrire sur Amazon Data Firehose avec le SDK AWS

Vous pouvez utiliser l'API Amazon Data Firehose pour envoyer des données vers un flux Firehose à l'aide du SDK pour AWS Java, .NET, Node.js, Python ouRuby. Si vous utilisez Amazon Data Firehose pour la première fois, prenez le temps de vous familiariser avec les concepts et la terminologie présentés dans. Qu'est-ce qu'Amazon Data Firehose ? Pour plus d'informations, consultez Start Developing with Amazon Web Services.

Ces exemples ne représentent pas du code prêt à la production, car ils ne recherchent pas toutes les exceptions possibles ou ne tiennent pas compte de toutes les considérations possibles en matière de sécurité ou de performances.

L'API Amazon Data Firehose propose deux opérations pour envoyer des données à votre flux Firehose : et. PutRecordPutRecordBatch PutRecord()envoie un enregistrement de données au cours d'un appel et PutRecordBatch() peut envoyer plusieurs enregistrements de données au cours d'un appel.

Opérations d'écriture unique utilisant PutRecord

L'ajout de données nécessite uniquement le nom du flux Firehose et un tampon d'octets (<=1000 Ko). Dans la mesure où Amazon Data Firehose regroupe plusieurs enregistrements avant de charger le fichier dans Amazon S3, vous souhaiterez peut-être ajouter un séparateur d'enregistrements. Pour placer les données un enregistrement à la fois dans un flux Firehose, utilisez le code suivant :

PutRecordRequest putRecordRequest = new PutRecordRequest(); putRecordRequest.setDeliveryStreamName(deliveryStreamName); String data = line + "\n"; Record record = new Record().withData(ByteBuffer.wrap(data.getBytes())); putRecordRequest.setRecord(record); // Put record into the DeliveryStream firehoseClient.putRecord(putRecordRequest);

Pour plus de contexte de code, consultez l'exemple de code inclus dans le AWS SDK. Pour plus d'informations sur la syntaxe des demandes et des réponses, consultez la rubrique correspondante dans Firehose API Operations.

Opérations d'écriture par lots à l'aide de PutRecordBatch

La saisie de données nécessite uniquement le nom du flux Firehose et une liste d'enregistrements. Dans la mesure où Amazon Data Firehose regroupe plusieurs enregistrements avant de charger le fichier dans Amazon S3, vous souhaiterez peut-être ajouter un séparateur d'enregistrements. Pour placer des enregistrements de données par lots dans un flux Firehose, utilisez le code suivant :

PutRecordBatchRequest putRecordBatchRequest = new PutRecordBatchRequest(); putRecordBatchRequest.setDeliveryStreamName(deliveryStreamName); putRecordBatchRequest.setRecords(recordList); // Put Record Batch records. Max No.Of Records we can put in a // single put record batch request is 500 firehoseClient.putRecordBatch(putRecordBatchRequest); recordList.clear();

Pour plus de contexte de code, consultez l'exemple de code inclus dans le AWS SDK. Pour plus d'informations sur la syntaxe des demandes et des réponses, consultez la rubrique correspondante dans Firehose API Operations.