当前位置:   article > 正文

mongodb删除亿级数据_mongodb数据量超大 分批次删除

mongodb数据量超大 分批次删除

mongodb删除亿级数据

  1. 我们的数据是这样的,我们取前10条
  2. > db.device_state.find().limit(10)
  3. { "_id" : NumberLong(200000), "_class" : "com.iot.device.model.DeviceState", "deviceId" : "5799edd59da13a2c62b5108a6d78e201", "propertyName" : "Tamper", "propertyValue" : "1", "productId" : NumberLong(183), "logDate" : ISODate("2019-10-31T13:50:00.078Z"), "tenantId" : NumberLong(2) }
  4. 写脚本分批删除数据
  5. mongo --port 30000 -u admin -p 123456 iot_db_control device_log_delete.js
  6. cat device_log_delete.js
  7. try{
  8. for (var i = 7000000 ; i <= 15000000; i +=30000){
  9. print("delete_id: "+ i);
  10. db.device_log.deleteMany({"_id":{$lte : i , $gte : i-30000}})
  11. sleep (2000);
  12. };
  13. }
  14. catch (e) {
  15. print(e);
  16. }
  17. 根据负载,sleep时间可以调整

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/寸_铁/article/detail/878374
推荐阅读
相关标签
  

闽ICP备14008679号