기본 콘텐츠로 건너뛰기

라벨이 nosql인 게시물 표시

[Golang] Golang으로 MongoDB 연결하기

How to use MongoDB with Golang 이 문서에서는 아주 간단하게 Docker-compose를 이용해서 MongoDB를 구동하고 Golang을 통해서 연결하는 부분에 대해서 정리하고 있습니다. 환경은 맥북, VSCode, Golang, Docker 등이 이미 설치되어 있는 것을 기준으로 합니다. 간단한 MongoDB 정리 RDBMS와의 비교 RDBMS MongoDB Database Database Table Collection Tuple/Row Document Column Key/Field Table Join Embedded Documents Primary Key Primary Key (_id) 특징과 장/단점 주요 특징 들은 다음과 같다. Document-Oriented Storage : Database > Collections > Documents 구조로 Document는 key-value 형태의 BSON (Binary JSON) 으로 되어 있다. Full Index Support : 다양한 인덱싱을 제공한다. Single Field Indexes : 기본적인 인덱스 타입 Compound Indexes : RDBMS의 복합 인덱스 타입 Multikey Indexes : Array에 매칭되는 값이 하나라도 있으면 인덱스에 추가하는 인덱스 타입 Geospatial Indexes and Queries : 위치기반 인덱스와 쿼리 지원 Text Indexes : String에 대한 인덱스 지원 Hashed Indexes : Btree 인덱스가 아닌 Hash 타입의 인덱스도 지원 Replication & High Availablity : 간단한 설정을 통해서 데이터 복제를 지원하므로 가용성이 향상된다. Auto-Sharding : 자동으로 데이터를 분산해서 저장하며, 하나의 컬랙션처럼 사용할 수 있도록 수평