정기적 인 간격으로 문서를 제거해야하는 데이터베이스가 있습니다. 그것은 배치 당 100,000 개의 문서가있는 야구장에있게 될 것입니다.소파에서 문서를 효율적으로 대량 삭제 DB
오늘부터는 제거 할 문서의 _id : s 및 _rev : s 목록을 반환하는보기에 대한 요청을 먼저 수행합니다.
그런 다음 각 문서에 대해 hostname/database/_id? = _ rev에 대한 http DELETE 요청을 수행합니다.
내가 100k 문서 각각에 대해 http 요청을해야하기 때문에 어리석게 비효율적 인 것처럼 보입니다.
소파에서 많은 양의 문서를 더 효율적으로 삭제할 수있는 방법이 있습니까? 나는 새로운 문서를 만들기위한 POST와 비슷한 명령을 찾고 있는데, 여기에서 http의 본문에 데이터를 보냅니다. 아니면 mapreduce에서 이것을하는 방법. 그러나 지금까지는 운이 없다.
시간이 좀 걸릴 준비가되었습니다. 아직도 이것은 내가 가진 것보다 훨씬 낫다. 해당 업데이트에서 _deleted 플래그를 설정할 수 있다는 사실을 잊어 버렸을 것입니다. 하나의 질문이지만, 압축이 실행될 때 데이터베이스에서 문서를 실제로 삭제하게됩니까? 아니면 보이지 않게 할 수 있습니까? –