AWS cloudsearch 의 최대 단점 중 하나. delete all document 기능이 없다.
새로운 도메인 만들어서 인덱싱 작업하는 것도 지긋지긋 하다.
오늘 나를 괴롭힌 것은 다름아닌 delete document.
삭제할 document 형식은 다음과 같다.
[{"type": "delete", "id": "tt0484571"} ,{"type": "delete", "id": "tt0484572"}... ,{"type": "delete", "id": "tt0484573"}] | cs |
난 batch 파일을 만들어 업로드 하였고, 결과는.
{ "status": "success", "adds": 0, "deletes": 50 } | cs |
오케이 정상 삭제!
하지만 삭제되어야 할 데이터는 계속해서 검색이 되고, 총 document 수도 줄지 않고... 뭔가 빼먹었겠지.
문서를 열심히 뒤져보니 cloudsearch 에서 확실하게 삭제하려면 index 를 리빌드 하라고.
오케이!
$ aws cloudsearch index-documents --domain-name ... | cs |
장작 4시간에 걸쳐 다시 확인해보니 옌장, 삭제 안됐다.
저 결과에 success 는 대체 뭐냐고.
결국 찾아낸 원인은, 난 id 필드를 가지고 있었고, {"type": "delete", "id": "tt0484571"} 에 ID(key) 를 넣어야 하는 데 id 필드를 넣고 있었다.
ㅋㅋ 제길...
WRITTEN BY
- 손가락귀신
정신 못차리면, 벌 받는다.
,