[英]Empty a MongoDB (via Azure Cosmos Db) shared collection with deletemany
我目前正在通過Microsoft AzureCosmosDB使用MongoDB處理數據的NodeJS項目。
為了更好地利用該項目,我有一個共享集合(以_id作為分鍵),我想定期清空它,我知道這是通過使用帶有空對象作為參數的“ deleteMany”指令完成的。
因此,我嘗試了一下,目前遇到了經常性的錯誤:
query in command must target a single shard key
我了解此錯誤背后的邏輯,但我不知道從哪里開始尋找解決方案,也沒有在mongo文檔中找到任何幫助。
我已經讀過有關使用哈希分片鍵以及如何使分片鍵更加“靈活”的信息,但是我想知道是否有更簡單的解決方案,也許我錯過了一些東西,可以讓我清空集合而無需給出所有項目ID一一:)
任何想法 ?
非常感謝你 !
所以
看來這目前尚不可能,並且Azure CosmosDb團隊正在對此進行工作,並計划在今年的頭幾個月(2019年)發布日期。
謝謝您的幫助,也很抱歉
通過匹配具有_id
字段的集合中的任何文檔,您應該能夠執行查詢或刪除命令:
db.collection.deleteMany({ _id: { $exists: true }})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.