Safe Haskell | None |
---|---|
Language | Haskell2010 |
Gets a shard iterator. A shard iterator expires five minutes after it is returned to the requester.
A shard iterator specifies the position in the shard from which to start reading data records sequentially. A shard iterator specifies this position using the sequence number of a data record in a shard. A sequence number is the identifier associated with every record ingested in the Amazon Kinesis stream. The sequence number is assigned when a record is put into the stream.
You must specify the shard iterator type. For example, you can set the ShardIteratorType
parameter to read exactly from the position denoted by a specific sequence
number by using the AT_SEQUENCE_NUMBER
shard iterator type, or right after
the sequence number by using the AFTER_SEQUENCE_NUMBER
shard iterator type,
using sequence numbers returned by earlier calls to PutRecord
, PutRecords
, GetRecords
, or DescribeStream
. You can specify the shard iterator type TRIM_HORIZON
in
the request to cause ShardIterator
to point to the last untrimmed record in
the shard in the system, which is the oldest data record in the shard. Or you
can point to just after the most recent record in the shard, by using the
shard iterator type LATEST
, so that you always read the most recent data in
the shard.
When you repeatedly read from an Amazon Kinesis stream use a GetShardIterator
request to get the first shard iterator to to use in your first GetRecords
request and then use the shard iterator returned by the GetRecords
request in NextShardIterator
for subsequent reads. A new shard iterator is returned by
every GetRecords
request in NextShardIterator
, which you use in the ShardIterator
parameter of the next GetRecords
request.
If a GetShardIterator
request is made too often, you receive a ProvisionedThroughputExceededException
. For more information about throughput limits, see GetRecords
.
If the shard is closed, the iterator can't return more data, and GetShardIterator
returns null
for its ShardIterator
. A shard can be closed using SplitShard
or MergeShards
.
GetShardIterator
has a limit of 5 transactions per second per account per
open shard.
http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html
- data GetShardIterator
- getShardIterator :: Text -> Text -> ShardIteratorType -> GetShardIterator
- gsiShardId :: Lens' GetShardIterator Text
- gsiShardIteratorType :: Lens' GetShardIterator ShardIteratorType
- gsiStartingSequenceNumber :: Lens' GetShardIterator (Maybe Text)
- gsiStreamName :: Lens' GetShardIterator Text
- data GetShardIteratorResponse
- getShardIteratorResponse :: GetShardIteratorResponse
- gsirShardIterator :: Lens' GetShardIteratorResponse (Maybe Text)
Request
data GetShardIterator Source
Eq GetShardIterator | |
Read GetShardIterator | |
Show GetShardIterator | |
ToJSON GetShardIterator | |
AWSRequest GetShardIterator | |
ToQuery GetShardIterator | |
ToPath GetShardIterator | |
ToHeaders GetShardIterator | |
type Sv GetShardIterator = Kinesis | |
type Rs GetShardIterator = GetShardIteratorResponse |
Request constructor
GetShardIterator
constructor.
The fields accessible through corresponding lenses are:
Request lenses
gsiShardId :: Lens' GetShardIterator Text Source
The shard ID of the shard to get the iterator for.
gsiShardIteratorType :: Lens' GetShardIterator ShardIteratorType Source
Determines how the shard iterator is used to start reading data records from the shard.
The following are the valid shard iterator types:
AT_SEQUENCE_NUMBER - Start reading exactly from the position denoted by a specific sequence number. AFTER_SEQUENCE_NUMBER - Start reading right after the position denoted by a specific sequence number. TRIM_HORIZON - Start reading at the last untrimmed record in the shard in the system, which is the oldest data record in the shard. LATEST - Start reading just after the most recent record in the shard, so that you always read the most recent data in the shard.
gsiStartingSequenceNumber :: Lens' GetShardIterator (Maybe Text) Source
The sequence number of the data record in the shard from which to start reading from.
gsiStreamName :: Lens' GetShardIterator Text Source
The name of the stream.
Response
Response constructor
getShardIteratorResponse :: GetShardIteratorResponse Source
GetShardIteratorResponse
constructor.
The fields accessible through corresponding lenses are:
Response lenses
gsirShardIterator :: Lens' GetShardIteratorResponse (Maybe Text) Source
The position in the shard from which to start reading data records sequentially. A shard iterator specifies this position using the sequence number of a data record in a shard.