如何在 DynamoDB 中为制造商建模
How to model a Manufacturer in DynamoDB
我有关系数据库背景,我正在为 一个 table 的概念而苦苦挣扎,以代表我在 DynamoDB.
中的所有数据
我的应用程序有制造商,他们允许其员工访问我的门户 CRM(制造商用户)。用户然后将他们自己的客户添加到系统并记录他们的所有订单。
- GetManufacturer()
- GetManufacturerUsers()
- GetManufacturerCustomers()
- GetManufacturerCustomersOrders()
一个制造商永远不会看到另一个制造商的客户订单。
我了解 PK 和 SK 的基础知识,我的问题是... 真的吗?这真的是单身吗table?
Table 客户帐户
- 制造商
(Name, logo etc)
- 制造商用户
(Users of that Manufacturer that access my system i.e. email, role)
- 制造商的客户(custID,他们所属的制造商名称)
- 客户交易数据(很多)
鉴于以上情况,您将如何在 DynamoDB 中建模?
访问模式故事
- 按用户 SK ManufacturerID 查询制造商(登录、名称)
- 按制造商 ID 获取所有客户 ID 和名称按用户 ID 过滤
- 获取按 CustomersID 和 ManufacturerID 过滤的所有订单
- 获取按 OrdersID 和 CustomersID 过滤的所有订购商品
在您学习的过程中,NoSQL 数据建模与 SQL/relational 数据库中的数据建模完全不同。单一 table 设计要求您以不同的方式思考您的数据,这可能伴随着陡峭的学习曲线。
Alex Debrie,The DynamoDB Book 的作者,撰写了一些关于 DynamoDB 数据建模的最佳资料。他的书很棒,我推荐给任何想要了解 DynamoDB 中的 NoSQL 数据建模的人。
在您的情况下,我首先阅读在 2019 年 AWS Re:Invet 会议上发表的 article on modeling one-to-many relationships in DynamoDB. You can also see the same material in this video。这两个资源都会让您更好地理解 DynamoDB 中的单个 table 设计。我还没有找到可以 jump-start DynamoDB 学习过程的更好资源。
我有关系数据库背景,我正在为 一个 table 的概念而苦苦挣扎,以代表我在 DynamoDB.
中的所有数据我的应用程序有制造商,他们允许其员工访问我的门户 CRM(制造商用户)。用户然后将他们自己的客户添加到系统并记录他们的所有订单。
- GetManufacturer()
- GetManufacturerUsers()
- GetManufacturerCustomers()
- GetManufacturerCustomersOrders()
一个制造商永远不会看到另一个制造商的客户订单。
我了解 PK 和 SK 的基础知识,我的问题是... 真的吗?这真的是单身吗table?
Table 客户帐户
- 制造商
(Name, logo etc)
- 制造商用户
(Users of that Manufacturer that access my system i.e. email, role)
- 制造商的客户(custID,他们所属的制造商名称)
- 客户交易数据(很多)
鉴于以上情况,您将如何在 DynamoDB 中建模?
访问模式故事
- 按用户 SK ManufacturerID 查询制造商(登录、名称)
- 按制造商 ID 获取所有客户 ID 和名称按用户 ID 过滤
- 获取按 CustomersID 和 ManufacturerID 过滤的所有订单
- 获取按 OrdersID 和 CustomersID 过滤的所有订购商品
在您学习的过程中,NoSQL 数据建模与 SQL/relational 数据库中的数据建模完全不同。单一 table 设计要求您以不同的方式思考您的数据,这可能伴随着陡峭的学习曲线。
Alex Debrie,The DynamoDB Book 的作者,撰写了一些关于 DynamoDB 数据建模的最佳资料。他的书很棒,我推荐给任何想要了解 DynamoDB 中的 NoSQL 数据建模的人。
在您的情况下,我首先阅读在 2019 年 AWS Re:Invet 会议上发表的 article on modeling one-to-many relationships in DynamoDB. You can also see the same material in this video。这两个资源都会让您更好地理解 DynamoDB 中的单个 table 设计。我还没有找到可以 jump-start DynamoDB 学习过程的更好资源。