Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- docker
- ksql
- airflow
- UI for kafka
- 크롤링
- DBT
- k9s
- Materializations
- mysql
- kafka
- proerty
- 윈도우
- 도커
- KubernetesPodOperator
- CDC
- bar cahrt
- 동적 차트
- freshness
- 카프카
- 쿠버네티스
- 모바일
- dbt_project
- spark
- numpartitions
- 파이썬
- polars
- query history
- Java
- spring boot
- Python
Archives
- Today
- Total
데이터 엔지니어 이것저것
몽고디비 본문
728x90
몽고디비를 성명하기 전 NoSQL을 설명해야한다.
NoSQL이란?
전통적인 관계형 데이터베이스(RDBMS)과는 다르게 비관계영 DBMS로 대규모 데이터를 유연하게 처리할수 있는 장점
테이블-칼럼과 같은 스키마 없이, 분산 환경에서 단순 검색 및 추가 작업을 위한 key - value 최적화,
지연과 처리율이 우수하다. 대규모 확대가 가능, 수평적 확장성의 특징을 가지고 있다.
아파치 카산드라, 하둡, 몽고DB 같은것들이 대표적인 예시이다.
몽고디비의 대표적인 특징
ㅇ 데이터가 Json 구조로 저장, 스키마가 없다.
ㅇ Full index Support
ㅇ 데이터 복제를 통해 가용성 향상
ㅇ primary key를 기반으로 여러 서버에 데이터 나누는 스케일 아웃 가능
ㅇ 키 기반으로 get, put 외 다양한 쿼리 제공
ㅇ 고성능의 atomic operation을 지원
ㅇ 맵리듀스 제공
ㅇ 별도 스토리지 엔진을 통해 파일 저장 가능
장점
ㅇ 삭제가 없는 경우 적합 (eg. 로그, 세션 등)
- 스키마가 없어 어떤 형태의 데이터라도 저장 가능
- 쓰기, 읽기의 성능이 뛰어나다. 캐싱 또는 많은 트래픽을 감당할때 좋다
- 스케일 아웃이라 쉽게 운용 가능
- SQL만큼 강력한 쿼리 제공
- Json 형태로 저장하여 직관적이며 개발하기 편하다
단점
ㅇ 정합성이 떨어진다.
- Join이 없다. 조인이 필요 없도록 데이터 구조화가 필요하다
- 메모리 매핑 파일 로 파일 엔진 DB이다. 메모리 관리를 OS에 위임
메모리에 의존적, 메로리 크기가 성능을 좌우 - 완벽하게 SQL을 대체 할수 없다.
- B-tree 인덱스를 사용하여 인덱스를 생성, 크기가 커질수로 읽기,쓰기의 성능 저하.
이러한 특성때문에 조회하는데에 적합
728x90
'DB' 카테고리의 다른 글
Index 안타는 경우 (0) | 2021.12.30 |
---|---|
Index (0) | 2021.12.30 |
DataBase 비교 (0) | 2021.07.24 |
Flask with MongoDB 연결 (0) | 2021.06.13 |
보호소에서 중성화한 동물 (1) | 2021.05.19 |