3

I am looking for an example to send multiple records to kinesis streams using putrecordbatch.

I am currently using putrecord command in the following way to send records to kinesis streams.

aws firehose put-record --delivery-stream-name csvtoredshiftstreamingjson --record='Data="{\"productid\":1,\"productname\":\"phone\",\"productprice\":\"2.30\"}"'

Request help on a similar way to write putrecordbatch.

Thanks & Regards, Srivignesh KN

John Rotenstein
  • 241,921
  • 22
  • 380
  • 470
Srivignesh KN
  • 452
  • 8
  • 22
  • You might try looking at the man page `aws firehose put-record-batch help` It looks pretty well explained there. – John Jones Apr 06 '17 at 22:53

2 Answers2

2

From aws firehose put-record-batch help:

aws firehose put-record-batch \
        --delivery-stream-name csvtoredshiftstreamingjson \
        --records \
'"{\"productid\":1,\"productname\":\"phone\",\"productprice\":\"2.30\"}"' \
'"{\"productid\":1,\"productname\":\"phone\",\"productprice\":\"2.30\"}"' \
'"{\"productid\":1,\"productname\":\"phone\",\"productprice\":\"2.30\"}"'

Should work fine, up to 500 records or the limit of your command line buffer.

The result will look something like:

{
  "FailedPutCount": 0, 
  "RequestResponses": [
    {
      "RecordId": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRvIGVpdXNtb2QgdGVtcG9yIGluY2lkaWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdWEuIFV0IGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpdGF0aW9uIHVsbGFtY28gbGFib3JpcyBuaXNpIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuIER1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51bGxhIHBhcmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1bHBhIHF1aSBvZmZpY2lhIGRlc2VydW50IG1vbGxpdCBhbmltIGlkIGVzdCBsYWJvcnVtLg=="
    }, 
    {
      "RecordId": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRvIGVpdXNtb2QgdGVtcG9yIGluY2lkaWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdWEuIFV0IGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpdGF0aW9uIHVsbGFtY28gbGFib3JpcyBuaXNpIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuIER1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51bGxhIHBhcmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1bHBhIHF1aSBvZmZpY2lhIGRlc2VydW50IG1vbGxpdCBhbmltIGlkIGVzdCBsYWJvcnVtLg=="
    }, 
    {
      "RecordId": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRvIGVpdXNtb2QgdGVtcG9yIGluY2lkaWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdWEuIFV0IGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpdGF0aW9uIHVsbGFtY28gbGFib3JpcyBuaXNpIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuIER1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51bGxhIHBhcmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1bHBhIHF1aSBvZmZpY2lhIGRlc2VydW50IG1vbGxpdCBhbmltIGlkIGVzdCBsYWJvcnVtLg=="
    }
  ]
}
Sean Summers
  • 2,514
  • 19
  • 26
  • Thanks Sean, this worked with few modifications to the open and close quotes, i have added the code that worked for me. – Srivignesh KN Jul 18 '17 at 22:30
0

I was able to resolve this in the following way.

aws firehose put-record-batch --delivery-stream-name S3TestingStream --records '"{\"productid\":1,\"productname\":\"phone\",\"productprice\":\"2.30\"}"' \
'"{\"productid\":2,\"productname\":\"bus\",\"productprice\":\"5.40\"}"' \
'"{\"productid\":3,\"productname\":\"car\",\"productprice\":\"3.20\"}"'

This gives me the record ids after the successful putrecord.

   "FailedPutCount": 0, 
"RequestResponses": [
    {
        "RecordId": "N3w6uvXwuxbd9sdXrNI3Kcptcwu5j/oco1wuIjq6vrbz+HAkDEw0N1Rah58pwx6h5dZozBScJ4EFFTQf0SxhH5A0Ie6LGdfJ0OuStB3zb512a2O/bmQretZWGopN3bvzMQO3EIZ3ksNaM63rCIbIT5fI6ZkYzX+rLu8QQtaMCS/881z6qwMGG7n3eJCtWK36uTs4M0X5hEpR1+j8B4hyjdXexu212f4j"
    }, 
    {
        "RecordId": "eWW4ZX9bwyIjVdJ/TQbb+Yh+vJFo/O/CdeT4MXby4T4DNydjoGgoPluQFJbwzFMV2Q6OPWXJblNgjRG3nGVGn73WPQC3AhqWQ3Bqc1ioa2E5yyYGEK1bbk57I4lFN9cdhkkC01POKwz9RszZLkJB38iZsIK4Gh2lp2p65LTPmBWdP0c8Hgd6WOJfrX8IHRhLhc00tuBBi6IM5jCdWRAyLhf45fGhPTee"
    }, 
    {
        "RecordId": "vf8NVYzfGQiCPX0ocRhdhqeTlobYv9FIOacHanqCrkbspHM71Zg36rS5YLu5clIvCSIs6cX6EnaStn5L6s8LgpGQNBBfgr5zk9ydRWNHHF3kkEvqZnPcHU64R4KpkvVhqDTVELqMsFxPfPFEP9Gikzc3d3IqN2EMc+T8fAj7g66nNZgQ3TF3y0SMeZpGyrezDYfLUzGuP/ZzbhCvMr2ypRW51SszGUBN"
    }
]

}

Srivignesh KN
  • 452
  • 8
  • 22