• What is a partition key?


    DynamoDB supports two types of primary keys:

    • Partition key: A simple primary key, composed of one attribute known as the partition key. Attributes in DynamoDB are similar in many ways to fields or columns in other database systems.
    • Partition key and sort key: Referred to as a composite primary key, this type of key is composed of two attributes. The first attribute is the partition key, and the second attribute is the sort key. Following is an example.

    Why do I need a partition key?

    DynamoDB stores data as groups of attributes, known as items. Items are similar to rows or records in other database systems. DynamoDB stores and retrieves each item based on the primary key value, which must be unique. Items are distributed across 10-GB storage units, called partitions (physical storage internal to DynamoDB). Each table has one or more partitions, as shown in the following illustration. For more information, see Partitions and Data Distribution in the DynamoDB Developer Guide.

    DynamoDB uses the partition key’s value as an input to an internal hash function. The output from the hash function determines the partition in which the item is stored. Each item’s location is determined by the hash value of its partition key.

    All items with the same partition key are stored together, and for composite partition keys, are ordered by the sort key value. DynamoDB splits partitions by sort key if the collection size grows bigger than 10 GB.

    Partition keys and request throttling

    DynamoDB evenly distributes provisioned throughput—read capacity units (RCUs) and write capacity units (WCUs)—among partitions and automatically supports your access patterns using the throughput you have provisioned. However, if your access pattern  exceeds 3000 RCU or 1000 WCU for a single partition key value, your requests might be throttled with a ProvisionedThroughputExceededException error.

    Reading or writing above the limit can be caused by these issues:

    • Uneven distribution of data due to the wrong choice of partition key
    • Frequent access of the same key in a partition (the most popular item, also known as a hot key)
    • A request rate greater than the provisioned throughput

    To avoid request throttling, design your DynamoDB table with the right partition key to meet your access requirements and provide even distribution of data.

  • 相关阅读:
    结构化分析工具之判定树
    结构化分析工具之判定表
    结构化分析工具之结构化语言
    结构化分析工具之数据字典
    结构化分析工具之数据流图
    结构化分析方法
    软件生存周期模型之V模型
    软件生存周期模型之喷泉模型
    软件生存周期模型之螺旋模型
    软件生存周期模型之原型模型
  • 原文地址:https://www.cnblogs.com/cloudrivers/p/11619356.html
Copyright © 2020-2023  润新知