2
我已經在博客中讀到過,我可以使用租戶ID作爲分區鍵來製作一個dynamodb表多租戶,排序鍵作爲客戶ID。DynamoDB多租戶 - 分區鍵
聽起來不錯,但想象一下,我的租戶id = X的工作量很大,因此我將在同一個分區上承擔很大的工作量。
創建一個哈希鍵是連接tenantid + customerid,所以我不會有一個熱點?
我已經在博客中讀到過,我可以使用租戶ID作爲分區鍵來製作一個dynamodb表多租戶,排序鍵作爲客戶ID。DynamoDB多租戶 - 分區鍵
聽起來不錯,但想象一下,我的租戶id = X的工作量很大,因此我將在同一個分區上承擔很大的工作量。
創建一個哈希鍵是連接tenantid + customerid,所以我不會有一個熱點?
是的,你可以,根據你的訪問模式。
無論何時您想要從DynamoDB表中選擇Get
或Query
項,都需要提供確切的分區鍵。如果你不這樣做,你只能Scan
,這是一個代價高昂的操作。
如果您主要對tenant-id + customer-id>
的數據感興趣,那麼將其作爲分區鍵是有意義的。如果您不會有customer-id
,那麼您應該保留tenant-id
作爲分區鍵。