728x90
용어
기본 Database
Database는 Collection의 모음이다.
- Admin
- 인증과 권한 부여 역할
- 일부 관리 작업을 하려면 Admin Database에 대한 접근이 필요하다.
- ex) 서버 Shut Down, User Role 제어
- Local
- 모든 MongoDB Instance는 Local Database를 소유한다.
- Oplog와 같은 replcation 절차에 필요한 정보를 저장한다.
- startupo_log와 같은 instance 진단 정보를 저장한다.
- local database 자체는 복제 되지 않는다.
- Config
- Sharded Cluster에서 각 Shard의 정보를 저장한다.
Collection 특징
- 동적 스키마를 갖고 있어서 스키마를 수정하려면 필드 값을 추가/수정/삭제 하면된다.
- Collection 단위로 Index를 생성할 수 있다.
- Collection 단위로 Shard를 나눌 수 있다.
Document 특징
- JSON 형태로 표현하고 BSON(Binary JSON) 형태로 저장한다.
- 모든 Document에는 "_id" 필드가 있고, 없이 생성하면 ObjectId 타입의 고유한 값을 저장한다.
- PK 와 같다.
- 생성 시, 상위 구조인 Database나 Collection이 없다면 먼저 생성하고 Document를 생성한다.
- Document의 최대 크기는 16MB 이다.
요약
- Database -> Collection -> Document -> Field 순으로 구조가 형성되어 있다.
- admin, config, local database는 MongoDB를 관리하는데 사용된다.
- Collection은 동적 스키마를 갖는다.
- Document는 JSON 형태로 표현되고 BSON 형태로 저장된다.
- Document는 고유한 "_id"필드를 항상 갖고있다.
- Document의 최대 크기는 16MB로 고정되어 있다.
728x90
'DB' 카테고리의 다른 글
[Redis] Data Type (Strings, Lists, Sets, Hashes) (0) | 2024.02.23 |
---|---|
[Redis] Redis란? (0) | 2024.02.20 |
SQL VS NoSQL (MongoDB 공부 전 ) (0) | 2024.02.18 |
Mysql Procedure (0) | 2024.02.03 |
Index Hint (0) | 2024.01.20 |