기본적으로 3단 구조이다.
// 이런 식의 자료구조로 key 값이 table 에서의 칼럼과 같다.
{
name: "admin",
age: 21,
active: true,
}
연결 관리
node.js 에서는 기본적으로 mongoDB 와 연결할 수 있는 드라이브를 제공하지만, 이것 만으로는 대이터베이스와의 연결상태를 관리하기 어렵다.
mongoose 에서는 코드와 DB의 연결상태를 관리하는 기능을 제공한다.
스키마 관리
미리 데이터 형식을 정하여 관리해야 프로젝트를 진행하는 데에 유용하다.
mongoose는 코드 level 에서 스키마를 정의하고 관리할 수 있다.
Populate
mongoDB는 Join을 제공하지 않는다(그 대신 aggregate 라는 복잡한 쿼리가 존재).
하지만, mongoose의 populate 를 사용하여 간단하게 구현할 수 있다.