この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
ども、大瀧です。
昨日、Amazon Kinesisのアップデートがありレコードにタイムスタンプ属性が追加されました。
レコードのApproximateArrivalTimestamp
属性にKinesisがレコードを受信したおおよその時刻がUNIXタイムスタンプの形式で含まれます。AWS CLIでGetRecords
をコールしてみました。
$ aws kinesis get-shard-iterator --stream-name OtakiTest --shard-id shardId-000000000000 --shard-iterator-type TRIM_HORIZON
XXXXXXXXXX
$ aws kinesis get-records --shard-iterator XXXXXXXXXX
{
"Records": [
{
"Data": "dGVzdA==",
"PartitionKey": "test",
"ApproximateArrivalTimestamp": 1443022250.265,
"SequenceNumber": "49554112327853074975925532336133655172802753794989359106"
},
{
"Data": "dGVzdA==",
"PartitionKey": "test",
"ApproximateArrivalTimestamp": 1443022256.487,
"SequenceNumber": "49554112327853074975925532336134864098622368836480925698"
}
],
"NextShardIterator": "AAAAAAAAAAFYkWnzAb12lz2WcLPd5Enq8N7RurYfnSoO1Iqe4CMIzP0eq+Op4fs+rHxJtd99YS3eTwsJZ2EREpRHAUKXJs83idFA9Tko1Rf9WHY1RZ9ChqEVw/0ltQ3JPevNGAX+llBJpN16WgX0Ot22wLAGu4GLF8kxUuVwAOItIkHi6DbEzhlBIfzhz8NjdZGOawi3Bs4=",
"MillisBehindLatest": 3704000
}
$ date --date '@1443022256.487'
Wed Sep 23 15:30:56 UTC 2015
$
これまではレコードの属性として時刻に関する情報が無かったため、必要に応じてあらかじめレコードのデータにタイムスタンプを含める必要がありました。既定で属性としてタイムスタンプが入るようになったので、データの時刻に関する処理がより手軽に行えるようになりましたね。