DynamoDBStreams / Client / get_shard_iterator
get_shard_iterator#
- DynamoDBStreams.Client.get_shard_iterator(**kwargs)#
Returns a shard iterator. A shard iterator provides information about how to retrieve the stream records from within a shard. Use the shard iterator in a subsequent
GetRecords
request to read the stream records from the shard.Note
A shard iterator expires 15 minutes after it is returned to the requester.
See also: AWS API Documentation
Request Syntax
response = client.get_shard_iterator( StreamArn='string', ShardId='string', ShardIteratorType='TRIM_HORIZON'|'LATEST'|'AT_SEQUENCE_NUMBER'|'AFTER_SEQUENCE_NUMBER', SequenceNumber='string' )
- Parameters:
StreamArn (string) –
[REQUIRED]
The Amazon Resource Name (ARN) for the stream.
ShardId (string) –
[REQUIRED]
The identifier of the shard. The iterator will be returned for this shard ID.
ShardIteratorType (string) –
[REQUIRED]
Determines how the shard iterator is used to start reading stream records from the shard:
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) stream record, which is the oldest record in the shard. In DynamoDB Streams, there is a 24 hour limit on data retention. Stream records whose age exceeds this limit are subject to removal (trimming) from the stream.LATEST
- Start reading just after the most recent stream record in the shard, so that you always read the most recent data in the shard.
SequenceNumber (string) – The sequence number of a stream record in the shard from which to start reading.
- Return type:
dict
- Returns:
Response Syntax
{ 'ShardIterator': 'string' }
Response Structure
(dict) –
Represents the output of a
GetShardIterator
operation.ShardIterator (string) –
The position in the shard from which to start reading stream records sequentially. A shard iterator specifies this position using the sequence number of a stream record in a shard.
Exceptions
DynamoDBStreams.Client.exceptions.ResourceNotFoundException
DynamoDBStreams.Client.exceptions.InternalServerError
DynamoDBStreams.Client.exceptions.TrimmedDataAccessException
Examples
The following example returns a shard iterator for the provided stream ARN and shard ID.
response = client.get_shard_iterator( ShardId='00000001414576573621-f55eea83', ShardIteratorType='TRIM_HORIZON', StreamArn='arn:aws:dynamodb:us-west-2:111122223333:table/Forum/stream/2015-05-20T20:51:10.252', ) print(response)
Expected Output:
{ 'ShardIterator': 'arn:aws:dynamodb:us-west-2:111122223333:table/Forum/stream/2015-05-20T20:51:10.252|1|AAAAAAAAAAEvJp6D+zaQ... <remaining characters omitted> ...', 'ResponseMetadata': { '...': '...', }, }