amazonka-dynamodb-2.0: Amazon DynamoDB SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.DynamoDB.Types.KeySchemaElement

Description

 
Synopsis

Documentation

data KeySchemaElement Source #

Represents a single element of a key schema. A key schema specifies the attributes that make up the primary key of a table, or the key attributes of an index.

A KeySchemaElement represents exactly one attribute of the primary key. For example, a simple primary key would be represented by one KeySchemaElement (for the partition key). A composite primary key would require one KeySchemaElement for the partition key, and another KeySchemaElement for the sort key.

A KeySchemaElement must be a scalar, top-level attribute (not a nested attribute). The data type must be one of String, Number, or Binary. The attribute cannot be nested within a List or a Map.

See: newKeySchemaElement smart constructor.

Constructors

KeySchemaElement' 

Fields

  • attributeName :: Text

    The name of a key attribute.

  • keyType :: KeyType

    The role that this key attribute will assume:

    • HASH - partition key
    • RANGE - sort key

    The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB's 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.

Instances

Instances details
FromJSON KeySchemaElement Source # 
Instance details

Defined in Amazonka.DynamoDB.Types.KeySchemaElement

ToJSON KeySchemaElement Source # 
Instance details

Defined in Amazonka.DynamoDB.Types.KeySchemaElement

Generic KeySchemaElement Source # 
Instance details

Defined in Amazonka.DynamoDB.Types.KeySchemaElement

Associated Types

type Rep KeySchemaElement :: Type -> Type #

Read KeySchemaElement Source # 
Instance details

Defined in Amazonka.DynamoDB.Types.KeySchemaElement

Show KeySchemaElement Source # 
Instance details

Defined in Amazonka.DynamoDB.Types.KeySchemaElement

NFData KeySchemaElement Source # 
Instance details

Defined in Amazonka.DynamoDB.Types.KeySchemaElement

Methods

rnf :: KeySchemaElement -> () #

Eq KeySchemaElement Source # 
Instance details

Defined in Amazonka.DynamoDB.Types.KeySchemaElement

Hashable KeySchemaElement Source # 
Instance details

Defined in Amazonka.DynamoDB.Types.KeySchemaElement

type Rep KeySchemaElement Source # 
Instance details

Defined in Amazonka.DynamoDB.Types.KeySchemaElement

type Rep KeySchemaElement = D1 ('MetaData "KeySchemaElement" "Amazonka.DynamoDB.Types.KeySchemaElement" "amazonka-dynamodb-2.0-GNxlseyeFiu302JKQwQrUS" 'False) (C1 ('MetaCons "KeySchemaElement'" 'PrefixI 'True) (S1 ('MetaSel ('Just "attributeName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "keyType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 KeyType)))

newKeySchemaElement Source #

Create a value of KeySchemaElement with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:attributeName:KeySchemaElement', keySchemaElement_attributeName - The name of a key attribute.

$sel:keyType:KeySchemaElement', keySchemaElement_keyType - The role that this key attribute will assume:

  • HASH - partition key
  • RANGE - sort key

The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB's 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.

keySchemaElement_keyType :: Lens' KeySchemaElement KeyType Source #

The role that this key attribute will assume:

  • HASH - partition key
  • RANGE - sort key

The partition key of an item is also known as its hash attribute. The term "hash attribute" derives from DynamoDB's 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.