이번 장은 DB 종류에 대해서 각각 설명하고 비교하는 장이었다. 문서DB와 그래프 DB 위주로 공부했다.
DB 간의 차이점을 알고 선택할 때 기준을 가지고 팀원들과 협업하는 것이 목표.
맵리듀스는 많은 컴퓨터에서 대량의 데이터를 처리하기 위한 프로그래밍 모델이다.
몽고 DB를 포함한 NoSQL 데이터 저장소는 제한된 형태의 맵리듀스를 지원한다. 많은 문서를 대상으로 읽기 전용(read-only) 질의를 수행할 때 사용한다.
몽고디비에서 map, reduce 함수를 수행할 때 순수 함수여야 한다. 전달된 데이터만 사용하고 그 외의 부수 효과는 없어야 한다.
필터를 선언적으로 지정하고, 질의와 일치하는 문서들에 호출하고 map의 결과값을 reduce로 합쳐서 컬렉션에 기록한다.
문서형 DB도 읽기/쓰기 유형으로 나뉜다 (스키마리스지만 구조 정도는 나뉜다고;)
대부분의 RDBMS는 alter table문이 수 밀리초밖에 안 걸리는데, MySQL에서 테이블 변경이 이루어지면 전체 테이블을 복사하는데 이 때 수 분~수 시간까지 중단시간이 발생한다.
→ 이건 좀 크리티컬하지 않나. 그러면 이거 할 때는 사이트 점검 중 띄워놓고 해야 하는 걸까.
그냥 새 테이블 만들고 데이터 마이그레이션 갈겨~
한번에 해당 문서의 많은 부분을 필요로 하는 경우에만 적용된다.