NoSQL 혁명은 2006년에 출판된 Google 빅테이블 문서 인터넷 규모의 애플리케이션은 Oracle과 같은 관계형 데이터베이스에서 필요한 성능, 민첩성, 가용성을 얻을 수 없었기 때문입니다. 이제 최신 애플리케이션의 주요 고려 사항은 다음과 같습니다:
- 상용 하드웨어에서 스케일아웃하여 비즈니스와 함께 성장하고 밀리초 미만의 지연 시간으로 초당 수백만 개의 작업을 지원하세요.
- 데이터 모델 및 액세스 패턴의 유연성으로 빠르게 진화하는 비즈니스 환경에 따라 데이터베이스를 변경할 수 있습니다.
- 단 몇 초의 다운타임도 고객과 매출 손실을 의미하므로 연중무휴 24시간 가용성 유지
NoSQL 분야의 초기 진입자 중 하나인 MongoDB는 확장성이나 액세스 유연성, 합리적인 비용으로 고가용성을 제공하는 능력에서 상당한 단점을 가지고 있음에도 불구하고 성공을 거두었습니다. NoSQL 시장에 약간 늦게 진입한 Couchbase는 처음부터 분산 아키텍처를 채택하여 스케일아웃, 유연성 및 고가용성 를 훨씬 더 잘 지원합니다. 많은 고객들이 베이크오프에서 몽고DB 대신 카우치베이스를 선택했거나 몽고DB가 따라잡을 수 없다는 것을 깨닫고 전환했습니다. 그러한 고객 중 하나는 Viber는 글로벌 메시징 플랫폼인 MongoDB에서 Couchbase로 전환했습니다:
"우리는 MongoDB의 NoSQL 기술이 회사의 증가하는 데이터 관리 요구 사항을 적절히 지원하지 못한다는 사실을 알게 되었습니다. 데이터베이스와 캐싱 레이어의 더 많은 조합을 포함하여 Cassandra 및 Amazon의 DynamoDB와 같은 여러 데이터베이스 기술을 조사한 후 Couchbase를 배포했습니다. 이제 Couchbase를 통해 이전 솔루션보다 훨씬 많은 초당 수십만 건의 작업을 처리할 수 있게 되었습니다." 아미르 이쉬 샬롬, 최고 아키텍트, Viber
Couchbase가 더 나은 이유 알아보기
확장성, 민첩성, 고가용성에 있어 Couchbase가 더 나은 이유에 대한 몇 가지 주요 하이라이트는 다음과 같습니다:
- 컬렉션별로 샤드 키를 선택해야 하는 몽고DB의 수동(그리고 번거로운) 샤딩과 달리 Couchbase는 자동 샤딩을 지원합니다.
- Couchbase는 데이터와 다르게 분할된 글로벌 보조 인덱스를 허용하여 유연하고 새로운 워크로드에 적응할 수 있습니다. 다른 모든 액세스 패턴은 모든 노드에서 분산 수집을 초래하는 반면, MongoDB는 단일 액세스 패턴에 대해서만 엄격하고 최적화되어 있습니다.
- Couchbase는 규모에 구애받지 않으며 모든 기능이 모든 수준의 규모에서 작동합니다. 반면에 MongoDB는 단일 샤드 설정에 편향되어 있으며 조인 및 그룹화와 같은 많은 중요한 기능이 다중 샤드 설정에서 작동하지 않습니다.
- Couchbase는 노드 하나만 추가하면 스케일아웃이 가능합니다. 반면에 몽고DB는 클러스터에 다른 샤드를 추가하려면 최소 3개의 노드를 추가해야 하므로 TCO가 매우 높습니다.
- Couchbase 자동 페일오버는 여러 개의 활성 신호를 기반으로 하므로 매우 빠르고 강력합니다. MongoDB 장애 복구는 복제본이 설정된 노드 간의 하트비트만을 기반으로 하기 때문에 훨씬 느리고 취약합니다.
아래 링크에서 백서를 다운로드하여 직접 확인해 보시고 결정하시는 것이 좋습니다.