簡體   English   中英

如何在 DynamoDB 中 model 制造商

[英]How to model a Manufacturer in DynamoDB

我來自關系數據庫背景,我正在努力使用單個表的概念來表示我在 DynamoDB 中的所有數據

我的應用程序有制造商,他們允許他們的員工訪問我的門戶 CRM(制造商用戶)。 用戶然后將他們自己的客戶添加到系統並記錄和記錄他們的所有訂單。

  • 獲取制造商()
  • GetManufacturerUsers()
  • 獲取制造商客戶()
  • GetManufacturerCustomersOrders()

制造商永遠不會看到其他制造商客戶的訂單。

我了解 PK 和 SK 的基礎知識,我的問題是……真的嗎? 這真的是單桌嗎?

表客戶帳戶

  • 制造商(Name, logo etc)
  • 制造商用戶(Users of that Manufacturer that access my system ie email, role)
  • 制造商的客戶(custID,他們所屬的制造商名稱)
  • 客戶交易數據(很多)

鑒於上述情況,您將如何在 DynamoDB 中使用 model?

訪問模式故事

  • 按用戶查詢制造商(登錄名、名稱) SK ManufacturerID
  • 按制造商 ID 獲取所有客戶 ID 和名稱 按用戶 ID 過濾
  • 獲取按 CustomersID 和 ManufacturerID 過濾的所有訂單
  • 獲取按 OrdersID 和 CustomersID 過濾的所有 Ordered Items

正如您所了解的,NoSQL 數據建模與 SQL/關系數據庫中的數據建模完全不同。 單表設計要求您對數據進行不同的思考,這可能伴隨着陡峭的學習曲線。

Alex Debrie 是The DynamoDB Book 的作者,他撰寫了一些關於 DynamoDB 中數據建模的最佳材料。 他的書很棒,我向任何想了解 DynamoDB 中的 NoSQL 數據建模的人推薦這本書。

在您的情況下,我會先閱讀一篇關於在 DynamoDB 中建模一對多關系的文章 您還可以在 2019 年 AWS Re:Invet 會議上展示的視頻中看到相同的材料。 這兩個資源將使您更好地了解 DynamoDB 中的單表設計。 我還沒有找到更好的資源來啟動 DynamoDB 學習過程。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM