WiredTiger의 Hazard Pointer
WiredTiger의 Hazard Pointer WiredTiger에서 Hazard Pointer는 메모리 페이지가 퇴거 될 수 있는지 여부를 관리하는 데 사용됩니다. 이 포스팅에서는 Hazard Pointer의 구현 프로세스를 분석합니다. Hazard Pointer Hazard Pointer는 다중 스레드 환경에서 리소스에 대한 잠금없이 액세스...
WiredTiger의 Hazard Pointer WiredTiger에서 Hazard Pointer는 메모리 페이지가 퇴거 될 수 있는지 여부를 관리하는 데 사용됩니다. 이 포스팅에서는 Hazard Pointer의 구현 프로세스를 분석합니다. Hazard Pointer Hazard Pointer는 다중 스레드 환경에서 리소스에 대한 잠금없이 액세스...
이전 포스트 TTL(Time To Live) Index TTL 인덱스는 도큐먼트가 가진 Date 타입의 필드값을 보고 설정된 TTL Monitor 쓰레드의 삭제 주기에 따라 도큐먼트의 유효기간을 체크하여, 더 이상 유효하지 않은 도큐먼트를 자동으로 삭제하는 기능의 인덱스입니다. TTL...
이전 포스트 Full Text Search Index (전문 검색 인덱스) DBMS에서 일반적으로 전문 검색 엔진을 구축할 때 사용하는 알고리즘은 크게 두가지로 나눌수 있습니다. 하나는 형태소 분석(어근 분석, stemming)과 N-Gram 2가지로 나뉘어집니다. 명사와 조사 사이를 띄어쓰기를...
MongoDB Monitoring MongoDB를 모니터링 하는데 있어서 가장 중요한 부분은 메모리를 체크하는 것입니다. 일반적으로 많은 데이터베이스에서 클라이언트가 데이터를 요청하면 디스크에서 메모리에 적재하여 읽기 혹은 변경작업을 진행합니다. 디스크에서 메모리로 페이지를 복사하는 작업은 매우 시간이 오래걸리는 작업이며,...
MongoDB Backup MongoDB는 기본적으로 레플리카 셋(복제 셋)을 구성하기 때문에 1차적으로 장애에 대한 대응이 빠른편에 속합니다. 프라이머리가 장애가 난 경우 노드간의 투표를 통해 세컨더리 DB를 프라이머리로 선출하여 장애가 발생한 프라이머리를 대체합니다. 하지만 어떤일이 발생할 지는...
MongoDB의 x.509 인증 x.509는 암호학에서 공개키 인증서와 인증 알고리즘의 표준 가운데에서 공개 키 기반의(PKI)의 ITU-T 표준입니다. x.509 시스템에서는 CA는 x.500 규약에 따라 서로 구별되는 공개키를 가진 인증서를 발행합니다. 한 조직의 인증된 Root 인증서는 그...
MongoDB의 인증과 권한 MongoDB 클러스터에서 권한을 활성화하면, 인증이 적용되고 사용자는 역할에 따라 권한이 부여된 작업만 가능합니다. MongoDB의 인증 매커니즘 커뮤니티 버전은 SCRAM(SCRAM-SHA-1, SCRAM-SHA-256)과 x.509 인증서 인증을 지원합니다. SCRAM이 디폴트로 사용되며 SCRAM-SHA-256는 MongoDB 4.0...
이전 포스팅 멀티 키 인덱스 (Multi key Index) MongoDB는 도큐먼트 기반의 비정규화된 데이터를 저장하는 데이터베이스입니다. 따라서 하나의 도큐먼트가 배열 형태의 데이터를 가지는 경우가 많이 발생하는데, 배열값이 있는 필드를 인덱싱하기 위해서 MongoDB는 각 엘리먼트에 대한 인덱스...
MongoDB 데이터 모델링 데이터 모델링의 핵심은 애플리케이션의 요구사항, 데이터베이스 엔진의 성능 특성 및 데이터 검색 패턴의 균형을 맞추는 것입니다. 데이터 모델을 설계 할 때 데이터 자체의 고유 구조 뿐만아니라 데이터의 애플리케이션 사용(즉, 데이터 쿼리,...
MongoDB Transaction Management MongoDB의 트랜잭션 MongoDB 4.0이 릴리즈 되면서 Replica Set에서 작동하는 다중 도큐먼트 트랜잭션에 대한 지원을 추가되었습니다. 또, MongoDB 4.2의 릴리스와 함께 다중 도큐먼트 트랜잭션에 대한 지원이 Sharded Cluster로 확장되었습니다. 현재의 MongoDB는 WiredTiger 스토리지...
최신 댓글