DynamoDB数据模型

时间:2018-10-11 13:30:43

标签: node.js amazon-dynamodb

正在寻找有关如何对我的数据需求进行建模以使其适合dynamoDB的帮助/建议。以关系方式对其进行建模是没有问题的,但是暂时不使用关系数据库(RDS)。

让我首先声明一下,我是dynamoDB的初学者。

我正在查看的数据需求如下: 我有一个对象列表(ID,NAME和一些其他属性)。 对于那些对象中的每一个,用户可以每天进行预订。 因此预订看起来像(ID,OBJECT_ID,DATE,USER)

此数据应显示在日历中的屏幕上,如表格中的某处,日期(按时间顺序)作为列标题,而对象作为行标题。

我一直在寻找如何对有效的dynamoDB进行建模的方法。 最初,我在考虑一个看起来像这样的json结构:

object: {
   Id:id
   name:name
   dates:[date:user,date2:user,...]
}

但是对于我来说,这对于dynamoDb似乎并不正确。 任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

我想您需要2个表:ObjectsReservations

Objects

  • 分区键:ID

您可以通过ID来请求任何对象。

Reservations

  • 分区键:OBJECT_ID
  • 排序键:DATE(您需要它来按日期对数据进行排序; 我想每个预订的DATE都是唯一的
  • 其他字段:IDUSER

为了获取“像日历一样的日历”,您必须扫描Objects以获取所有ID,然后对每个ID进行查询(对于初学者)以检索该对象的所有保留。

运气