본문 바로가기
DATABASE

[mongodb]node.js에서 mongodb 사용 with mongoose

by 하이바네 2023. 1. 27.
반응형

mongodb를 직접 연결하여 사용도 가능하나 mongoose와 같은 라이브러리를 이용하여 사용하는 것을 추천한다.

 

이와 관련된 여러 개념들에 대해서 살펴보자.

 

mongodb는 bson을 사용한다. bson이란?

 - binary json 이라는 뜻인데 말 그대로 일반적인 josn이 아닌 binary 형태라는 것이다.

 - josn이 가지는 단점을 보완하기 위해서 나왔다.(단점1 : 텍스트 기반으로 인한 구문 분석이 느림 / 단점2 : 공간효율성)

 

mongoose와 같은 것을 ODM이라고 부른다. ODM이란?

 - Object Document Mapping로 객체 형태로 db와 맵핑시킨다는 것이다(스키마의 형태가 된다)
 - 원래 mongodb는 스키마가 없으나 ODM을 사용하여 mysql에서와 같이 스키마를 다시 사용하게 된다.

 

moongoose의 또 다른 장점은?

 - 기존 RDB에서 존재하는 스키마의 개념을 부활시켰다. 그런데 이번에는 또 다른 join이라는 개념을 부활시켜준다.popluate()를 사용하면 되는데 주의할점은 db에서의 join과는 다르게 받아온 데이터를 사용해서 서버에서 재조합을 해주는 형태이므로 너무 남용을 하게되면 성능에 이슈가 발생 할 수 있어 주의를 요한다.

728x90

댓글