디벨롭
로그인
디벨롭
로그인
BSON 이 뭐야?
박상준
·
2024년 8월 15일
팔로우
0
0
등장 배경
JSON은 텍스트 기반이라 읽기가 쉽다.
하지만, 대용량 데이터 처리시에 효율성이 매우 떨어지는 문제가 있었다고 한다
MongoDB 는 빠른 데이터 처리와 다양한 데이터 타입 지원이 필요했는데
JSON 의 장점을 유지하면서 성능을 개선한
BSON
을 만들었다고 한다
BSON
은
Binary JSON 의 줄임말임
왜 빠른가
바이너리 인코딩
BSON 은 바이너리 형식으로 데이터를 저장한다.
빠른 파싱
텍스트 기반 JSON 은 문자열을 파싱해야하는 반면
BSON 은 바이너리 데이터를 직접 읽을 수 있다는 장점이 있다.
효율적인 저장
숫자 등의 데이터를 바이너리로 직접 저장하여 공간이 상대적으로 절약된다.
타입 정보와 길이 정보를 가진다
데이터를 읽을때
JSON
의 경우 타입을 추론하는 반면
바로 적절한 타입으로 처리가 가능하다.
또한 길이 정보를 가지기에
파일 데이터 전체를 순회할 이유가 없음.
필요한 부분만 빠르게 접근이 가능해진다.
효율적인 메모리 할당도 가능함
데이터를 읽을 때 필요한 메모리 크기를 미리 추론이 가능해져서 효율적인 메모리 관리도 가능
직렬/ 역직렬화 효율
바이너리 형식이기에
JSON
에 비해 직렬화와 역직렬화 과정이 단순하다.
근데
JSON
이 항상 느린건 아님.. 대규모 파일의 경우
BSON
이 일반적으로 빠른거지
작은 파일의 경우
JSON
이 더 빠를수도 있긴함.
박상준
이전 블로그 : https://oth3410.tistory.com/
팔로우
이전 포스트
[알고리즘 2644] 촌수 계산
다음 포스트
[웹서버 만들기] 배경지식. URL 의 구성
0개의 댓글
댓글 작성