[英]Best way to drop big collection in MongoDB
我有獨立的 MongoDB 實例版本 3.2。 存儲引擎是WiredTiger
。 刪除大集合(> 500Gb)以最小化獨占數據庫鎖定時間的最佳方法是什么? 2個解決方案之間會有時間差嗎?
附加信息,可能很重要:
_id
索引{_id: {day: "2018-01-01", key:"someuniquekeybyday"}}
正確答案可能是:“掉落操作不是線性的”。 10Gb集合需要幾秒鍾,500Gb集合完全相同。
我已多次刪除1TB收藏,花了幾秒鍾。
ps為您提供一些新的東西,在評論中沒有看到:您有第三個選項 - 在此數據庫中制作其他集合的副本,然后在您的應用程序中切換數據庫。
我在 4.0 版中刪除了超過 1.4 TB 的集合。 操作用時不到 1 秒。
2022-03-15T01:17:25.688+0000 I REPL [replication-2] completing collection drop for order.system.drop.1647307045i163t6.feeds with drop optime { ts: Timestamp(1647307045, 163), t: 6 }(通知optime: { ts: 時間戳(1647307045, 163), t: 6 })
根據文檔,刪除操作將獲得對受影響數據庫的鎖定並將阻止所有操作,因此應用程序將在短時間內在數據庫操作中遭受輕微延遲。 在放棄大量收藏之前,請確保...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.