공식 페이지
https://www.mongodb.com/ko-kr
문서
https://www.mongodb.com/ko-kr/docs/
mongoDB with python
https://www.mongodb.com/ko-kr/docs/drivers/python-drivers/
- pyMongo는 동기, 멀티 스레드 환경, Motor는
AsyncIO
기반으로 비동기를 지원하는 드라이버이다.
MongoDB 설치(로컬)
(artice) FastApi + MongoDB
스키마 설계(fastAPI)
BSON
MongoDB는 BSON기반의 쿼리 언어를 사용한다. BSON이란 Binary JSON의 약자로, JSON(JavaScript Object Notation)을 바이너리 형식으로 변환한 데이터 교환 포맷이다. MongoDB에서 데이터 저장 및 전송을 위해 사용하는 기본 포맷이기도 하다.
1. BSON의 특징
BSON은 JSON의 간결성과 가독성을 기반으로 설계되었지만, 성능과 유연성을 위해 바이너리 형식으로 변환되어 다음과 같은 특징을 가집니다:
- 바이너리 형식:
- JSON은 문자열 기반의 포맷이지만, BSON은 바이너리 포맷이므로 읽기/쓰기 속도가 더 빠르고 효율적입니다.
- JSON보다 풍부한 표현:
- JSON이 제공하지 않는 추가 데이터 타입을 지원합니다.
- 예: 정수, 64비트 부동소수점, 날짜, 이진 데이터 등.
- 크기 최적화:
- 데이터를 저장할 때 일부 크기를 최적화하지만, 메타데이터(필드 길이, 타입 등)를 포함하기 때문에 JSON보다 약간 더 클 수 있습니다.
- 빠른 순회 가능:
- BSON은 데이터가 바이너리로 직렬화되어 있어, 데이터의 특정 필드에 빠르게 접근할 수 있습니다.