【发布时间】:2016-04-27 13:15:49
【问题描述】:
我在 DynamoDB 中有 Messages 表。它有四列发件人,时间戳,消息,收件人。我想知道,与其使用四列中的任何一列创建分区键,为什么不创建另一个列用于连接发送者&时间戳&接收者的分区目的。
因此,此列将包含 JohnSmithID1461754484307SallyMcDonaldID 之类的数据。
通过这样做,当搜索来自特定发件人和收件人组合的消息时,我可以通过使用类似查询的这一列进行查询(以 & 结尾)。还有其他几种方法可以利用这个专栏。
问题 1。我尝试使用一列而不是将查询分散到几列中是否过于复杂?
问题 2. 采用此方向是否有明显的性能优势?
问题 3. 这种设计模式是否仅在我出于数据大小目的而消除列 SenderId 和 RecipientID 时才值得? (我需要时间戳列作为排序键)
【问题讨论】:
标签: amazon-web-services amazon-dynamodb nosql