MongoDB Sharded Cluster

DataBase/NoSQL 2023. 6. 1. 21:17

이번 포스트에서는 MongoDB 의 Sharded Cluster 배포 형태에 대해 알아보겠다. 사용 목적 Sharded Cluster 의 사용 목적은 다음 상황에 적절하다... 기존에 Replica Set 을 잘 이용하고 있다가.. 서비스가 잘 커서 MongoDB 에 많은 양의 데이터가 추가 되어 더이상 감당 할 수 없게 되었다.. 이 때, Sharding 을 통해 데이터를 샤드 키로 분산하여 여러개의 Replica Set 묶음으로 적재 할 수 있도록 할 수 있다. 아래 그림을 통하여 더 자세히 알아보도록 하자.. 위 그림은 대표적인 MongoDB 의 Sharded Cluster 형태를 나타낸다. 각 샤드는 내부에서 Replica Set 을 이루고 있다. Application 은 mongos 라는 라우터..

Article Thumbnail
MongoDB Replica Set

DataBase/NoSQL 2023. 5. 20. 17:08

MongoDB 의 3가지 형태 중 하나인 Replica set 에 대해 알아보겠다. 특징 - High Availability (고 가용성) - 가장 많이 사용됨 - 무중단 서비스를 가능하도록 만들어주는 최소 단위 Replica set 의 맴버 현재 위 그림에서 MongoDB 는 3개의 맴버를 가지고 있다. (Primary, Secondary, Secondary) 각 맴버는 각각 다른 서버에 존재한다. (모두 하나의 서버에 존재 할 수 도 있다.) 맴버의 상태로는 3가지가 있다. Primary - Read/Write 요청 모두 처리 가능하다. - Write 를 처리 할 수 있는 유일한 맴버이다. - Replica set 에서 하나만 존재 Secondary - Read에 대한 요청만 처리할 수 있다. - 복..

Article Thumbnail
MongoDB 3가지 형태

DataBase/NoSQL 2023. 5. 20. 16:41

MongoDB 를 배포할 때는 3가지 형태로 배포할 수 있다. 1. Standalone 2. Replica set 3. Sharded cluster 3가지에 대해 각각 간단히 알아보겠다. 1. Standalone 용도 : 개인 스터디, 테스트 단순히 프로세스 1개만을 이용해서 MongoDB 서버를 띄우는 형태이다. 분산을 하기 위해 MongoDB 를 사용하는 경우가 많은데 이를 이용하지 않는 형태로... 스터디 용도가 아니면 사용되지 않는다. 2. Replica set 용도 : HA(High Availability) 고 가용성 용도로 현업에서 가장 많이 사용되는 형태이다. Atlas 에서도 Replica set 형태로 배포된다. 위 그림에서는 Replica set 의 기본 형태를 보여준다. MongoDB..

Article Thumbnail
MongoDB 구조

DataBase/NoSQL 2023. 5. 18. 20:20

MongoDB 의 구조에 대해 알아보자 관계형 DB와 용어간 매핑하여 MongoDB 구조 알아보기 RDBMS MongoDB Database Database Table Collection Row Document Column Field MongoDB Database MongoDB의 Database 단위는 관계형 DB의 Database 단위와 같다. 관계형 DB에서 Table 집합이 Database 인데, MongoDB에서는 Collection 집합이 Database라 보면 된다. MongoDB 인스턴스 를 생성하면 처음에 무조건 생성되어있는 것은 admin, local, config 3가지 Database 가 생성되어있다. 이는 MongoDB 를 관리하는데 사용되는 기본 설정 Database 이다. Data..

MongoDB 시작해보기

DataBase/NoSQL 2023. 5. 18. 14:18

먼저 NoSQL 에 대해 알아보겠다. NoSQL의 등장 배경 관계형 DB가 등장할 당시엔 Disk Storage 가 당시 매우 비싸고 용량의 제한이 컷다. 데이터 중복을 줄여서 용량을 최적으로 사용하는 방향으로 발전 되어 왔기 때문에 Scale-up, 데이터 정규화 기능에 특화 되어있다. NoSQL은 데이터의 일관성을 약간 포기한 대신 여러 대의 컴퓨터에 데이터를 분산하여 저장하는 것(Scale-out)을 목표로 등장하였다. NoSQL의 등장으로 작고 값싼 장비 여러 대로 대량의 데이터와 컴퓨팅 부하를 처리하는 것이 가능하게 되었다. NoSQL의 종류 1. Key-value 2. Document 3. Column-family 4. Graph 여기서 MongoDB는 Document 모델에 해당한다. Doc..

Article Thumbnail