翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS SDK を使用した Kinesis Data Firehose への書き込み
Amazon Kinesis Data Firehose API を使用して Kinesis Data Firehose 配信ストリームにデータを送信するには、AWSSDK for Java
これらのサンプルは、すべての例外を確認しているわけではなく、すべてのセキュリティやパフォーマンスの側面を考慮しているわけでもない点で、本稼働環境に使用できるコードを表すものではありません。
Kinesis Data Firehose API には、配信ストリームにデータを送信するための 2 つのオペレーション (および) が用意されています。PutRecordそしてputRecordBatch。PutRecord()
1 つのコール内に 1 つのデータレコードを送信し、PutRecordBatch()
は、1 回の呼び出しで複数のデータレコードを送信できます。
PutRecord を使用した単一の書き込みオペレーション
データの出力では、Kinesis Data Firehose 配信ストリーム名とバイトバッファ (<=1000 KB) のみが必要です。Kinesis Data Firehose バッチはファイルを Amazon S3 にロードする前に、複数のレコードをバッチ処理するため、レコードの区切り文字を追加することをお勧めします。レコードを一度にひとつずつ配信ストリームに出力するには、次のコードを使用します。
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 に含まれているサンプルコードを参照してください。リクエストと応答の構文の詳細については、「Amazon Kinesis Data Firehose API オペレーション」の関連するトピックを参照してください。
PutRecordBatch を使用したバッチ書き込みオペレーション
データの入力では、Kinesis Data Firehose 配信ストリーム名とレコードのリストのみが必要です。Kinesis Data Firehose バッチはファイルを Amazon S3 にロードする前に、複数のレコードをバッチ処理するため、レコードの区切り文字を追加することをお勧めします。データレコードをバッチで配信ストリームに出力するには、次のコードを使用します。
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 に含まれているサンプルコードを参照してください。リクエストと応答の構文の詳細については、「Amazon Kinesis Data Firehose API オペレーション」の関連するトピックを参照してください。