프로젝트를 하면서 mongoDB에 데이터를 적재하고 운영하던중 지금까지 도큐먼트는 JSON형태로 저장되는중알았지만
mongoDB는 특수한 BSON형태로 저장되고 출력은 JSON으로 한다는것을 알았습니다
JSON은 (JavaScript Object Notation) 경량의 데이터 교환 형식으로, 텍스트 기반입니다.
{
"name": "moon_happy",
"age": 25,
"isStudent": false,
"courses": [
{
"title": "수학",
"semester": 1
},
{
"title": "과학",
"semester": 2
}
],
"address": {
"city": "서울",
"country": "한국"
},
"hobbies": ["축구시청", "음주"]
}
BSON은 JSON과 형태는 동일하지만 Binary 형태로 변경된 구조입니다.
BSON은 이진 형식의 데이터이기 때문에 JSON처럼 가독성이 높은것은 아닙니다.
그러나 JSON과 유사한 객체와 배열을 포함하며, 효율적인 저장과 빠른 탐색・쿼리가 가능합니다.
{
"name": "moon_happy",
"age": 25 (int32),
"isStudent": false (boolean),
"courses": [
{
"title": "수학",
"semester": 1 (int32)
},
{
"title": "과학",
"semester": 2 (int32)
}
],
"objectId": ObjectId("507f1f77bcf86cd799439011"),
"created_at": ISODate("2023-08-22T00:00:00Z"),
"hobbies": ["축구시청", "음주"],
"patterns": /ab+c/i (regular expression)
}
아래는 BSON 형태의 간단한 예시입니다. (주의: BSON이 이진 형식이기 때문에 표현이 제한적일 수 있습니다. 아래 예시는 데이터 구조를 대략적으로 표현한 것에 불과합니다.)