Specifies the attributes that make up the primary key for a table or an index. The attributes in
KeySchema
must also be defined in the AttributeDefinitions
array. For more
information, see Data Model in the
Amazon DynamoDB Developer Guide.
Each KeySchemaElement
in the array is composed of:
The partition key of an item is also known as its hash attribute. The term "hash attribute" derives
from DynamoDB' usage of an internal hash function to evenly distribute data items across partitions, based on
their partition key values.
The sort key of an item is also known as its range attribute. The term "range attribute" derives from
the way DynamoDB stores items with the same partition key physically close together, in sorted order by the
sort key value.
For a simple primary key (partition key), you must provide exactly one element with a KeyType
of
HASH
.
For a composite primary key (partition key and sort key), you must provide exactly two elements, in this
order: The first element must have a KeyType
of HASH
, and the second element must
have a KeyType
of RANGE
.
For more information, see Specifying the Primary Key in the Amazon DynamoDB Developer Guide.