서점 사이트에서 책 정보를 크롤링하여 DB에 저장한 후 검색 엔진으로 Elasticsearch를 도입했다.

MongoDB의 데이터를 Elasticsearch에 색인하기 위해 Monstache를 선택했다.

흔히 Logstash를 사용하여 로그를 수집하지만, MongoDB에는 Monstache가 적합하다는 블로그와 유튜브를 통해 접하여 적용하게 되었다.

Group 11.png

Monstache란?

Monstache는 MongoDB의 변경 로그를 감지하고, 변경된 데이터를 Elasticsearch로 동기화하는 역할을 한다. 이를 통해 MongoDB의 데이터를 실시간으로 Elasticsearch에 색인하여 검색 및 질의 기능을 강화할 수 있다.

MongoDB Replica set

레플리카 셋은 데이터베이스의 고가용성 환경을 위해 필요하다. 우리 프로젝트에서는 Atlas를 통해 관리하기 때문에 따로 설정하지 않았다.

<aside> 💡 MongoDB Atlas는 클라우드에서 호스팅된 MongoDB 서비스이기 때문에 MongoDB 컨테이너를 실행할 필요없다. 또한 MongoDB Atlas는 Replica Set을 사용하여 데이터를 복제하고 고가용성을 제공하기 때문에 생성할 때 이미 Replica Set을 설정하도록 되어 있다.

즉, 도커에서 MongoDB, Replica Set 설정할 필요 X

</aside>

Monstache, Elasticsearch 도커로 세팅

Getting Started - Monstache

위 링크에서 제공하는 버전 정보를 참고하여 맞추면 된다.