반응형
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
'DATABASE' 카테고리의 다른 글
[mongodb] 마이그레이션 스크립트 작성 with bulkWrite (0) | 2023.04.05 |
---|---|
[mongodb] 데이터베이스 생성 및 기본 명령어 (0) | 2023.01.08 |
[mongodb] mac에서 mongodb설치 (0) | 2023.01.08 |
[mysql8.0] 툴로 접속 시 127.0.0.1(localhost) Connection failed 해결 (0) | 2022.12.24 |
[postgresql] ubuntu에 postgresql 설치 방법 및 기본 사용 예시 (0) | 2022.11.18 |
댓글