public class MergeShardsRequest extends AmazonWebServiceRequest implements java.io.Serializable
Merges two adjacent shards in a Kinesis data stream and combines them into a single shard to reduce the stream's capacity to ingest and transport data. Two shards are considered adjacent if the union of the hash key ranges for the two shards form a contiguous set with no gaps. For example, if you have two shards, one with a hash key range of 276...381 and the other with a hash key range of 382...454, then you could merge these two shards into a single shard that would have a hash key range of 276...454. After the merge, the single child shard receives data for all hash key values covered by the two parent shards.
MergeShards
is called when there is a need to reduce the overall
capacity of a stream because of excess capacity that is not being used. You
must specify the shard to be merged and the adjacent shard for a stream. For
more information about merging shards, see Merge Two Shards in the Amazon Kinesis Data Streams Developer
Guide.
If the stream is in the ACTIVE
state, you can call
MergeShards
. If a stream is in the CREATING
,
UPDATING
, or DELETING
state,
MergeShards
returns a ResourceInUseException
. If
the specified stream does not exist, MergeShards
returns a
ResourceNotFoundException
.
You can use DescribeStream to check the state of the stream, which is
returned in StreamStatus
.
MergeShards
is an asynchronous operation. Upon receiving a
MergeShards
request, Amazon Kinesis Data Streams immediately
returns a response and sets the StreamStatus
to
UPDATING
. After the operation is completed, Kinesis Data Streams
sets the StreamStatus
to ACTIVE
. Read and write
operations continue to work while the stream is in the UPDATING
state.
You use DescribeStream to determine the shard IDs that are specified
in the MergeShards
request.
If you try to operate on too many streams in parallel using
CreateStream, DeleteStream, MergeShards
, or
SplitShard, you receive a LimitExceededException
.
MergeShards
has a limit of five transactions per second per
account.
Constructor and Description |
---|
MergeShardsRequest() |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object obj) |
java.lang.String |
getAdjacentShardToMerge()
The shard ID of the adjacent shard for the merge.
|
java.lang.String |
getShardToMerge()
The shard ID of the shard to combine with the adjacent shard for the
merge.
|
java.lang.String |
getStreamName()
The name of the stream for the merge.
|
int |
hashCode() |
void |
setAdjacentShardToMerge(java.lang.String adjacentShardToMerge)
The shard ID of the adjacent shard for the merge.
|
void |
setShardToMerge(java.lang.String shardToMerge)
The shard ID of the shard to combine with the adjacent shard for the
merge.
|
void |
setStreamName(java.lang.String streamName)
The name of the stream for the merge.
|
java.lang.String |
toString()
Returns a string representation of this object; useful for testing and
debugging.
|
MergeShardsRequest |
withAdjacentShardToMerge(java.lang.String adjacentShardToMerge)
The shard ID of the adjacent shard for the merge.
|
MergeShardsRequest |
withShardToMerge(java.lang.String shardToMerge)
The shard ID of the shard to combine with the adjacent shard for the
merge.
|
MergeShardsRequest |
withStreamName(java.lang.String streamName)
The name of the stream for the merge.
|
clone, getCloneRoot, getCloneSource, getGeneralProgressListener, getRequestClientOptions, getRequestCredentials, getRequestMetricCollector, setGeneralProgressListener, setRequestCredentials, setRequestMetricCollector, withGeneralProgressListener, withRequestMetricCollector
public java.lang.String getStreamName()
The name of the stream for the merge.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
The name of the stream for the merge.
public void setStreamName(java.lang.String streamName)
The name of the stream for the merge.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
streamName
- The name of the stream for the merge.
public MergeShardsRequest withStreamName(java.lang.String streamName)
The name of the stream for the merge.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
streamName
- The name of the stream for the merge.
public java.lang.String getShardToMerge()
The shard ID of the shard to combine with the adjacent shard for the merge.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
The shard ID of the shard to combine with the adjacent shard for the merge.
public void setShardToMerge(java.lang.String shardToMerge)
The shard ID of the shard to combine with the adjacent shard for the merge.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
shardToMerge
- The shard ID of the shard to combine with the adjacent shard for the merge.
public MergeShardsRequest withShardToMerge(java.lang.String shardToMerge)
The shard ID of the shard to combine with the adjacent shard for the merge.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
shardToMerge
- The shard ID of the shard to combine with the adjacent shard for the merge.
public java.lang.String getAdjacentShardToMerge()
The shard ID of the adjacent shard for the merge.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
The shard ID of the adjacent shard for the merge.
public void setAdjacentShardToMerge(java.lang.String adjacentShardToMerge)
The shard ID of the adjacent shard for the merge.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
adjacentShardToMerge
- The shard ID of the adjacent shard for the merge.
public MergeShardsRequest withAdjacentShardToMerge(java.lang.String adjacentShardToMerge)
The shard ID of the adjacent shard for the merge.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 1 - 128
Pattern: [a-zA-Z0-9_.-]+
adjacentShardToMerge
- The shard ID of the adjacent shard for the merge.
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
Copyright © 2018 Amazon Web Services, Inc. All Rights Reserved.