readConcern "local"
읽기 고려가 "local"
인 쿼리는 데이터가 대부분의 복제본 세트 멤버에 기록되었다는 보장 없이(즉, 롤백될 수 있음) 인스턴스의 데이터를 반환합니다.
읽기 고려 "local"
은(는) 프라이머리 및 세컨더리에 대한 읽기 작업의 기본값입니다.
읽기 고려 (read concern) 수준에 관계없이 노드 의 가장 최근 데이터는 시스템에 있는 데이터의 최신 버전을 반영하지 않을 수 있습니다.
가용성
읽기 고려 "local"
는 인과적으로 일관적인 세션과 트랜잭션의 유무에 관계없이 사용할 수 있습니다.
로컬 및 트랜잭션 읽기 고려
개별 작업 수준이 아닌 트랜잭션 수준에서 읽기 문제를 설정합니다. 트랜잭션에 대한 읽기 문제를 설정하려면 트랜잭션 및 읽기 문제를 참조하십시오.
트랜잭션 내에서 컬렉션과 인덱스를 생성 할 수 있습니다. 컬렉션이나 인덱스를 명시적으로 생성하는 경우 트랜잭션은 읽기 고려 "local"
을 사용해야 합니다. 컬렉션을 암시적으로 생성하는 경우 사용 가능한 모든 읽기 고려를 트랜잭션에 사용할 수 있습니다.
복제본 세트 에서는 트랜잭션 이 읽기 고려 (read concern) local
을(를) 사용하더라도 트랜잭션 이 열린 점 에 스냅샷 에서 읽는 작업에서 더 강력한 읽기 격리 가 관찰될 수 있습니다.
예시
세 멤버로 구성된 복제본 세트에 0을 쓰는 쓰기 작업의 다음 타임라인을 고려해 보십시오.
참고
단순화를 위해 이 예시에서는 다음과 같은 상황을 가정합니다.
쓰기 0 이전의 모든 쓰기가 모든 구성원에 성공적으로 복제되었습니다.
쓰기 이전은 쓰기 0 이전의 이전 쓰기입니다.
Write 0 이후에는 다른 쓰기가 발생하지 않았습니다.
시간 | 이벤트 | 가장 최근 글 | 가장 최근 w: "대다수" 쓰기 |
---|---|---|---|
t 0 | 기본 적용 쓰기 0 | Primary: Write 0 Secondary 1: Write prev Secondary 2: Write prev | Primary: Write prev Secondary 1: Write prev Secondary 2: Write prev |
t 1 | 보조 1은 쓰기 0을적용합니다. | Primary: Write 0 Secondary 1: Write 0 Secondary 2: Write prev | Primary: Write prev Secondary 1: Write prev Secondary 2: Write prev |
티 2 | 보조 2 는 쓰기 0을 적용합니다. | Primary: Write 0 Secondary 1: Write 0 Secondary 2: Write 0 | Primary: Write prev Secondary 1: Write prev Secondary 2: Write prev |
t 3 | 프라이머리는 세컨더리 1에 성공적으로 복제되었음을 알리고 클라이언트에 확인 메시지를 보냅니다. | Primary: Write 0 Secondary 1: Write 0 Secondary 2: Write 0 | Primary: Write 0 Secondary 1: Write prev Secondary 2: Write prev |
t 4 | 주 서버가 보조 서버 2로복제가 성공했음을 인식합니다. | Primary: Write 0 Secondary 1: Write 0 Secondary 2: Write 0 | Primary: Write 0 Secondary 1: Write prev Secondary 2: Write prev |
t 5 | 보조 1은 (정기적인 복제 메커니즘을 통해) 가장 최근의 w에 대한 스냅샷을 업데이트하라는 알림을 받습니다. "majority" 쓰기 | Primary: Write 0 Secondary 1: Write 0 Secondary 2: Write 0 | Primary: Write 0 Secondary 1: Write 0 Secondary 2: Write prev |
t 6 | 보조 2는 (정기적인 복제 메커니즘을 통해) 가장 최근의 w에 대한 스냅샷을 업데이트하라는 알림을 받습니다. "majority" 쓰기 | Primary: Write 0 Secondary 1: Write 0 Secondary 2: Write 0 | Primary: Write 0 Secondary 1: Write 0 Secondary 2: Write 0 |
그런 뒤, 다음 표에는 "local"
읽기 우려를 가진 읽기 작업이 T
시점에 볼 수 있는 데이터 상태가 요약되어 있습니다.
대상 읽기 | 시간 T | 데이터 상태 |
---|---|---|
기본 | t 0이후 | 데이터는 쓰기 0을 반영합니다. |
중고등 교육 1 | t 1이전 | 데이터는 이전쓰기를 반영합니다. |
중고등 교육 1 | t 1이후 | 데이터는 쓰기 0을반영합니다. |
중고등 교육 2 | t 2이전 | 데이터는 이전쓰기를 반영합니다. |
중고등 교육 2 | t 2이후 | 데이터는 쓰기 0을반영합니다. |