DynamoDB日期RangeKey的排序顺序

时间:2018-12-04 17:30:33

标签: amazon-web-services amazon-dynamodb aws-java-sdk

我有一个DynamoDB表,其中包含以下键值:一个简单的字符串ID为HashKey,一个代表日期的字符串为RangeKey。日期字符串为YYYY-MM-DD格式。

我现在想知道DynamoDB如何订购其条目。当我在同一RangeKey上查询多个HashKey值时,结果按日期升序排列。

但是,根据Dynamo documentation,它将考虑所有非整数RangeKey的UTF-8字节值对其进行排序。

当我现在保存以下RangeKey条目时:

  1. 2019-01-01
  2. 2018-12-04
  3. 2018-12-05

简单的DynamoDBMapper.query(...)的输出将以正确的顺序进行输出:

  1. 2018-12-04
  2. 2018-12-05
  3. 2019-01-01

Dynamo是按日期对RangeKeys进行排序还是按与日期表示形式匹配的方式计算字节值?

1 个答案:

答案 0 :(得分:1)

以UTF-8字节对其进行排序。完全不知道您要对DynamoDB排序日期,它只是一个字符串。