2017-04-25 35 views
0

我正在將數據庫從mongodb遷移到dynamodb,並嘗試瞭解最佳做法,特別是使用輔助本地索引和排序鍵時。我應該在DynamoDB中使用二級索引還是單獨的ID查找表?

我的應用程序從網上獲取html數據,並將數據加載到多個表/集合中。在提取時,它會爲每個項目提供一個extracted_id,這是它從中提取的網站所獨有的。在加載項目之前,它會爲每個項目提供一個UUID作爲其主鍵/分區鍵。

問題:爲了避免分配不同的UUID相同的extracted_id我查詢數據庫來檢查實體具有預先存在的entity_uuid

當前解決方案:目前在mongodb中,我有兩組表/集合。一個用於存儲所有項目,另一個用於存儲實體的extracted_id(作爲鍵)/entity_uuid(作爲值)查找表。

更好的解決方案?:當我轉移到DynamoDB時,最好是僅創建一個數據庫作爲本地二級索引,以便不存儲重複數據?我不確定,因爲文檔對use indexes sparingly.說我不使用extracted_id除了提供項目與他們的uuid爲給定的網站。

希望這是有道理的,我是新來的AWS/DynamoDB,並會感謝提到的任何提示/更好的解決方案。

回答

0

爲什麼不只是製作新的DynamoDB表的分區鍵extracted_id並使用ConditionExpression attribute_not_exists(extracted_id)來防止您的應用程序寫入重複條目?

相關問題