Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Puede utilizar la API de Amazon Data Firehose para enviar datos a un flujo de Firehose con AWS SDK para Java
Estos ejemplos no representan códigos listos para producción, ya que no comprueban todas las excepciones posibles ni toman en cuenta todas las consideraciones de seguridad y desempeño posibles.
La API de Amazon Data Firehose ofrece dos operaciones para enviar datos al flujo de Firehose: PutRecord y PutRecordBatch. PutRecord()
envía un registro de datos en una llamada y PutRecordBatch()
puede enviar varios registros de datos en una llamada.
Operaciones individuales de escritura con PutRecord
Para incluir datos, solo se necesita el nombre del flujo de Firehose y un búfer de bytes (<= 1000 KB). Como Amazon Data Firehose agrupa en lotes varios registros antes de cargar el archivo en Amazon S3, es posible que desee agregar un separador de registros. Utilice el siguiente código para incluir los registros de datos de uno en uno en un flujo de Firehose:
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);
Para obtener más contexto de código, consulte el código de muestra que se incluye en AWS SDK. Para obtener información sobre la sintaxis de las solicitudes y respuestas, consulte el tema correspondiente en Firehose API Operations.
Operaciones de escritura por lotes con PutRecordBatch
Para incluir datos, solo se necesita el nombre del flujo de Firehose y una lista de registros. Como Amazon Data Firehose agrupa en lotes varios registros antes de cargar el archivo en Amazon S3, es posible que desee agregar un separador de registros. Utilice el siguiente código para incluir los registros de datos por lotes en un flujo de Firehose:
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();
Para obtener más contexto de código, consulte el código de muestra que se incluye en AWS SDK. Para obtener información sobre la sintaxis de las solicitudes y respuestas, consulte el tema correspondiente en Firehose API Operations.