- MongoDB 구조2023년 05월 18일
- starryeye
- 작성자
- 2023.05.18.: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 이다.
Database Description admin 인증과 권한 부여에 관련된 역할을 담당 local oplog, startup_log 와 같은 정보를 저장 config sharded cluster 에서 각 shard의 정보를 저장한다. MongoDB Collection
관계형 DB의 Table 단위와 같다.
MongoDB에서 Document 집합이 Collection 이다.
관계형 DB에서 Table은 엄격한 스키마를 가지고 있지만,
MongoDB는 자유로운 스키마를 가진다.
예를 들자면,
RDB 에서는 Table 스키마가 정의 되어있어야 데이터를 넣을 수 있지만
MongoDB 에서는 Collection에 대한 스키마가 정해져 있지 않은 상태에서
데이터(Document)를 집어넣으면 자동으로 Collection이 생성된다.
하지만, MongoDB 에서
Collection 단위로 Index를 생성할 수 있고
Collection 단위로 Shard를 나눌 수 있으므로
어느정도 일관된 스키마를 가져야할 필요는 있다.
MongoDB Document
RDB의 column이 모인 row에 해당하는 개념으로
MongoDB는 Field가 모이면 Document 가 된다.
(실제 데이터에 해당)
Document 는 JSON 형태로 표현하고
BSON 형태로 저장된다.
모든 Document는 "_id" 라는 Field 가 존재하는데 key 역할을 한다.
명시적으로 생성해주지 않으면 ObjectId 타입의 고유값을 할당한다.
Document 를 생성할 때, 상위 구조인 Collection, Database 를 지정하지 않으면
상위구조가 먼저 만들어지고 Document가 만들어진다.
Document는 스키마에 제약이 없기 때문에 한없이 커질 것을 우려하여..
최대 크기는 16MB 로 제약이 있다.
'DataBase > NoSQL' 카테고리의 다른 글
Redis 시작해보기 (0) 2023.06.01 MongoDB Sharded Cluster (0) 2023.06.01 MongoDB Replica Set (0) 2023.05.20 MongoDB 3가지 형태 (0) 2023.05.20 MongoDB 시작해보기 (0) 2023.05.18 다음글이전글이전 글이 없습니다.댓글