SimpleDB / Client / batch_put_attributes
batch_put_attributes#
- SimpleDB.Client.batch_put_attributes(**kwargs)#
The
BatchPutAttributes
operation creates or replaces attributes within one or more items. By using this operation, the client can perform multiple PutAttribute operation with a single call. This helps yield savings in round trips and latencies, enabling Amazon SimpleDB to optimize requests and generally produce better throughput.The client may specify the item name with the
Item.X.ItemName
parameter. The client may specify new attributes using a combination of theItem.X.Attribute.Y.Name
andItem.X.Attribute.Y.Value
parameters. The client may specify the first attribute for the first item using the parametersItem.0.Attribute.0.Name
andItem.0.Attribute.0.Value
, and for the second attribute for the first item by the parametersItem.0.Attribute.1.Name
andItem.0.Attribute.1.Value
, and so on.Attributes are uniquely identified within an item by their name/value combination. For example, a single item can have the attributes
{ "first_name", "first_value" }
and{ "first_name", "second_value" }
. However, it cannot have two attribute instances where both theItem.X.Attribute.Y.Name
andItem.X.Attribute.Y.Value
are the same.Optionally, the requester can supply the
Replace
parameter for each individual value. Setting this value totrue
will cause the new attribute values to replace the existing attribute values. For example, if an itemI
has the attributes{ 'a', '1' }, { 'b', '2'}
and{ 'b', '3' }
and the requester does a BatchPutAttributes of{'I', 'b', '4' }
with the Replace parameter set to true, the final attributes of the item will be{ 'a', '1' }
and{ 'b', '4' }
, replacing the previous values of the ‘b’ attribute with the new value.Warning
This operation is vulnerable to exceeding the maximum URL size when making a REST request using the HTTP GET method. This operation does not support conditions using
Expected.X.Name
,Expected.X.Value
, orExpected.X.Exists
.You can execute multiple
BatchPutAttributes
operations and other operations in parallel. However, large numbers of concurrentBatchPutAttributes
calls can result in Service Unavailable (503) responses.The following limitations are enforced for this operation:
256 attribute name-value pairs per item
1 MB request size
1 billion attributes per domain
10 GB of total user data storage per domain
25 item limit per
BatchPutAttributes
operation
See also: AWS API Documentation
Request Syntax
response = client.batch_put_attributes( DomainName='string', Items=[ { 'Name': 'string', 'Attributes': [ { 'Name': 'string', 'Value': 'string', 'Replace': True|False }, ] }, ] )
- Parameters:
DomainName (string) – [REQUIRED] The name of the domain in which the attributes are being stored.
Items (list) –
[REQUIRED] A list of items on which to perform the operation.
(dict) –
Name (string) – [REQUIRED] The name of the replaceable item.
Attributes (list) – [REQUIRED] The list of attributes for a replaceable item.
(dict) –
Name (string) – [REQUIRED] The name of the replaceable attribute.
Value (string) – [REQUIRED] The value of the replaceable attribute.
Replace (boolean) – A flag specifying whether or not to replace the attribute/value pair or to add a new attribute/value pair. The default setting is
false
.
- Returns:
None
Exceptions
SimpleDB.Client.exceptions.DuplicateItemName
SimpleDB.Client.exceptions.InvalidParameterValue
SimpleDB.Client.exceptions.MissingParameter
SimpleDB.Client.exceptions.NoSuchDomain
SimpleDB.Client.exceptions.NumberItemAttributesExceeded
SimpleDB.Client.exceptions.NumberDomainAttributesExceeded
SimpleDB.Client.exceptions.NumberDomainBytesExceeded
SimpleDB.Client.exceptions.NumberSubmittedItemsExceeded
SimpleDB.Client.exceptions.NumberSubmittedAttributesExceeded