데이터베이스와 MongoDB의 개념
단순히 데이터를 잘 저장하고 잘 찾기 위해 만들어진 소프트웨어를 Database Management System(DBMS) 이라 부르며 DBMS가 설치된 컴퓨터를 데이터베이스(DB)서버라고 부를 수 있다.
데이터베이스의 종류
🕸 관계형 데이터베이스 - Relational Database (RDB)
데이터 형식이 정해져 있고, 데이터 끼리 관계를 맺어 모순이 없는 데이터를 유지할 수 있도록 도와주는것에 집중한 데이터베이스를 관계형 데이터베이스라고 부른다. 모순이 없는 데이터: 무결성과 정합성이 높은 데이터
ex)MySQL, ORACLE, Maria DB
🗽 비관계형 데이터베이스 - Non-relational Database (NoSQL)
관계형 데이터베이스에 속하지 않는 모든 데이터베이스를 비관계형 데이터베이스라고 부릅니다. 비관계형 데이터베이스는 데이터의 형태가 고정되어 있지 않고 유연하게 확장할 수 있지만, 유연한 만큼 저장되는 데이터를 제대로 관리하지 않으면 데이터베이스에 저장된 데이터를 신뢰할 수 없게 되기도 합니다. 최근 많은 스타트업에서 유연한 설계를 위해 많이 채택되는 데이터베이스 유형입니다.
ex)Mongodb,AWS DynamoDB, Redis
Mongoose
mongoose의 문서(Document)란?
MongoDB에서 가지고 있는 각 데이터 하나하나를 문서(Document)라고 정의하며 1개 이상의 Key-Value의 쌍으로 이루어져있다.
{
"_id": ObjectId("6682192a1c155bd2f27881"),
"name": "lyw",
}
mongoose의 컬렉션(Collection)이란?
JSON 형식의 여러가지 문서(Document)를 보유할 수 있으며 관계형 데이터베이스(RDB)의 Table과 동일한 역할을 한다.
mongoose의 스키마(Schema)란?
스키마는 컬렉션(Collection)에 들어가는 문서(Document)에 어떤 종류의 값이 들어가는지를 정의하며 데이터를 모델링할 때 사용한다.
mongoose의 모델(Model)이란?
- 데이터베이스에 데이터를 저장해줄때 데이터의 구조를 담당한다
- 스키마를 사용하여 만들고, MongoDB에서 실제 작업을 처리할 수 있는 함수들을 지니고 있다.
- 문서(Document)를 생성할 때 사용한다.
'TIL' 카테고리의 다른 글
| JavaScript 챕터 8 - 예외 처리 고급 (0) | 2022.12.04 |
|---|---|
| Package.json (0) | 2022.12.04 |
| JavaScript의 ES (0) | 2022.11.27 |
| Express.js (0) | 2022.11.26 |
| HTTP / Web Server (0) | 2022.11.26 |