本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
傳送資料 AWS SDK
您可以使用 Amazon 數據 Firehose API 將數據發送到 Firehose 流使用 AWS
SDK對於爪哇
這些範例不代表可立即生產的程式碼,無法檢查出所有可能的例外狀況,也不可視為任何潛在安全或效能疑慮的原因。
Amazon 數據防火軟管API提供兩種操作,用於將數據發送到您的 Firehose 流:PutRecord和。PutRecordBatch PutRecord()
在一次通話中發送一個數據記錄,並PutRecordBatch()
可以在一個呼叫中發送多個數據記錄。
使用單一寫入作業 PutRecord
放置資料只需要 Firehose 串流名稱和位元組緩衝區 (<=1000 KB)。由於 Amazon 資料 Firehose 會先批次處理多筆記錄,再將檔案載入 Amazon S3,因此您可能需要新增記錄分隔符號。若要將資料一次放入 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);
如需更多程式碼內容,請參閱 AWS SDK。如需要求和回應語法的詳細資訊,請參閱 Firehose API 作業中的相關主題。
使用 Batch 寫入作業 PutRecordBatch
放置資料只需要 Firehose 串流名稱和記錄清單。由於 Amazon 資料 Firehose 會先批次處理多筆記錄,再將檔案載入 Amazon S3,因此您可能需要新增記錄分隔符號。若要將資料記錄批次放入 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();
如需更多程式碼內容,請參閱 AWS SDK。如需要求和回應語法的詳細資訊,請參閱 Firehose API 作業中的相關主題。