C++는 효율성, 다재다능함 및 광범위한 사용법으로 유명한 강력한 고성능 프로그래밍 언어입니다. MongoDB와 C++의 인기를 고려할 때 함께 작동하는 것은 놀라운 일이 아닙니다. 로컬 또는 온프레미스 MongoDB 설치에서 개발하든, MongoDB Atlas를 사용하여 클라우드 우선 순위로 개발하든, MongoDB C++ 드라이버 를 사용하면 MongoDB를 개발 프로세스에 손쉽게 통합할 수 있습니다.
개발 중인 C++ 애플리케이션에 어떤 데이터베이스를 사용할지 찾고 계십니까? 이 가이드를 통해 C++의 강점을 활용하여 MongoDB와 MongoDB를 원활하게 통합하는 방법을 살펴보며 MongoDB 데이터베이스 시스템의 유연성 및 확장성을 살펴보세요.
목차
- C++와 함께 MongoDB를 사용하는 이유
- MongoDB 및 C++ 시작하기
- 첫 번째 Atlas 클러스터 생성
- Atlas 클러스터에 연결
- 문서 및 컬렉션
- CRUD 작업
- 도움 받기
- 리소스
- 자주 묻는 질문(FAQ)
C++와 함께 MongoDB를 사용하는 이유
MongoDB는 가장 인기 있는 NoSQL 데이터베이스 기술로 1위를 차지했습니다. 고가용성과 확장 가능한 애플리케이션을 빌드하는 데 사용되는 문서 데이터베이스입니다. 2007년에 설립된 MongoDB는 개발자 커뮤니티에서 전 세계적으로 사랑받는 기업입니다. MongoDB는 항상 개발자에게 뛰어난 사용자 경험을 제공하는 데 집중해 왔으며, 이는 다른 모든 기능 외에도 MongoDB를 전 세계 개발자들이 선호하는 곳으로 만들었습니다. C++ 개발자는 여러 가지 이유로 MongoDB를 사용하여 상당한 이점을 얻을 수 있습니다.
- 유연한 스키마: SQL과 달리 MongoDB의 문서 모델은 컬렉션의 여러 문서가 다양한 정형 데이터를 가질 수 있도록 합니다. 이러한 유연성은 C++의 동적 특성에 잘 부합하며 데이터 모델을 수정하지 않고도 데이터 레이아웃을 변경할 수 있으므로 생산성을 높일 수 있습니다.
- 성능: MongoDB는 샤딩 및 복제를 기본으로 지원하며, 고가용성, 수평적 확장 및 지리적 분산을 제공합니다. 따라서 견고성과 고성능이 필요한 C++ 애플리케이션에 이상적인 선택입니다.
- 확장성: MongoDB는 애플리케이션에 서버를 더 추가하는 수평적 확장이 용이하도록 설계되었습니다. 반면 SQL 데이터베이스는 일반적으로 수직 확장(더 강력한 hardware)에 의존하기 때문에 한계가 있을 수 있습니다.
- 사용 편의성: MongoDB는 CRUD 작업을 위한 매우 간단하고 직관적인 API를 제공하며, 이는 MongoDB C++ 드라이버와 함께 쉽게 사용할 수 있습니다. MongoDB에 사용되는 JSON 유사 문서가 C++의 데이터 유형으로 직접 매핑되어 자연스러운 데이터 조작 환경을 제공합니다.
새로운 것을 구축하는 중 데이터베이스가 필요하다면 처음부터 MongoDB Atlas 를 사용하는 것을 고려하세요. Atlas는 전체 텍스트 검색, 벡터 검색, 차트, 파트너 통합 등 다양한 기능과 함께 제공되는 완전 관리형 클라우드 네이티브 데이터베이스 서비스를 제공합니다.
재미있는 사실: MongoDB 데이터베이스는 C++ 언어로 작성되었습니다!
MongoDB 및 C++ 시작하기
C++ 애플리케이션과 함께 MongoDB를 사용하려면 MongoDB와 C++ 애플리케이션 간의 인터페이스 역할을 하는 MongoDB C++ 드라이버 를 설치해야 합니다. 드라이버 는 mongocxx 또는 mongo-cxx-driver 라고도 합니다.
MongoDB C++ 드라이버를 설치하는 데 사용할 수 있는 옵션에는 여러 가지가 있습니다.
- 소스에서 빌드하고 설치합니다.
- 패키지 관리자(vcpkg, conan,homebrew, pt 등)를 사용하여 설치합니다.
- MongoDB C++ 드라이버의 공식 Docker 이미지 를 사용하여 설치합니다.
위의 모든 방법을 다루는 설치 페이지에서 자세한 문서를 참조하세요. Windows에서 소스에서 빌드하고 설치하기 위한 단계별 가이드 도 사용할 수 있습니다. 시작할 수 있는 10분짜리 동영상 자습서도 있습니다.
Visual Studio, Visual Studio Code 또는 CLion 등 원하는 IDE를 사용하여 MongoDB C++ 드라이버를 설정할 수 있습니다. C++ 드라이버 설치에는 CMake 구성 파일 패키지도 포함되어 있으므로 CMake의 find_package 명령을 사용하여 C++ 드라이버의 CMake 타겟을 가져오고 C++ 드라이버에 대한 링크를 공유 라이브러리로 링크할 수 있습니다.
첫 번째 Atlas 클러스터 생성
C++ 드라이버 설정이 모두 완료되면 데이터베이스가 필요합니다.
이 가이드에 따라 MongoDB Atlas에서 계정을 생성하고 무료 티어 클러스터를 생성할 수 있습니다. 샘플 데이터를 삽입하는 방법도 보여줍니다.
Atlas 클러스터에 연결
이전 섹션을 마치면 Atlas에 배포된 새로운 MongoDB 클러스터, 새로운 데이터베이스 사용자와 비밀번호, 그리고 클러스터에 로드된 몇 가지 샘플 데이터 세트가 있어야 합니다.
이제 드라이버를 사용하여 데이터베이스에 연결할 차례입니다. 데이터베이스 연결을 설정하려면 드라이버에 연결 방법에 대한 지침이 필요합니다. 이러한 지침을 연결 문자열이라고 합니다. 클러스터에 대한 연결 문자열과 사용자 이름은 Atlas 계정으로 이동하여 데이터베이스 섹션으로 이동한 후 '연결'을 클릭하여 가져올 수 있습니다.
드라이버와 버전을 선택하라는 팝업이 나타납니다. 두 드롭다운을 모두 입력한 후에는 데이터베이스 연결 문자열("mongdb+srv:// ")을 사용하여 클러스터에 연결할 수 있습니다. 사용자 이름과 비밀번호 값을 바꿔 입력해야 합니다.
이 연결 문자열을 사용하여 애플리케이션에서 MongoDB 클러스터에 대한 쿼리를 실행할 수 있습니다. 연결 문자열을 가져오는 방법에 대한 자세한 지침은 여기를 참조하세요. MongoDB Atlas 클러스터에 연결하고 ping 명령을 실행하는 예시 코드는 아래와 같습니다.