DynamoDB 最高效的日期类型
Posted
技术标签:
【中文标题】DynamoDB 最高效的日期类型【英文标题】:DynamoDB most efficient date type 【发布时间】:2014-05-22 14:57:18 【问题描述】:我看到 DynamoDB 本质上仅限于three data types:字符串、数字和二进制。这似乎留下了两个用于存储日期或时间戳的选项:
8601 日期/时间格式或 Unix 时间戳的字符串 编号 Unix 时间戳我需要将此日期/时间戳用作范围键并使用 scanIndexForward 对结果进行“排序”。是否可以说哪种方法更有效?
【问题讨论】:
我知道这是一个老问题,但你有没有找到答案? 【参考方案1】:我不知道它一定更有效,但我们使用 Unix 时间戳作为范围键已经取得了很好的成功。它的查询速度很快(低于 20 毫秒,有时低于 10 毫秒),让我们可以使用 scanIndexForward
标志对“最早到最新”或“最新到最早”进行排序。
缺点是,在查看原始表时,可能很难一目了然地比较两个时间戳,但很容易将时间戳转换为您选择的语言的日期类型。
【讨论】:
【参考方案2】:我刚刚对我的一个 DynamoDB 表执行了 DescribeTable,并注意到 DynamoDB 本身将表的 CreationDateTime 存储为 UNIX 时间戳浮点数。我猜他们这样做是有原因的。
【讨论】:
以上是关于DynamoDB 最高效的日期类型的主要内容,如果未能解决你的问题,请参考以下文章
用于存储日期和时间的最合适的 SQL 和 Java 数据类型 [重复]