Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

readConcern "local"

Una consulta con nivel de consistencia de lectura "local" devuelve datos de la instancia sin garantías de que los datos se hayan escrito en la mayoría de los miembros del set de réplicas (es decir, es posible que se reviertan).

El nivel de consistencia de lectura "local" es por defecto para las operaciones de lectura en el primario y los secundarios.

Independientemente de la El nivel de consistencia de lectura, los datos más recientes en un nodo pueden no reflejar la versión más reciente de los datos en el sistema.

readConcern "local" está disponible para su uso con o sin sesiones y transacciones causalmente coherentes.

Estableces el nivel de consistencia de lectura a nivel de transacción, no a nivel de operación individual. Para establecer el nivel de consistencia de lectura para las transacciones, consulte Transacciones y nivel de consistencia de lectura.

Puedes crear colecciones e índices dentro de una transacción. Si explícitamente se crea una colección o un índice, la transacción debe usar nivel de consistencia de lectura "local". Si creas implícitamente una colección, puedes usar cualquiera de los niveles de consistencia de lectura disponibles para las transacciones.

En un set de réplicas, incluso si una transacción utiliza un nivel de consistencia de lectura de local, es posible que observe un aislamiento de lectura más fuerte, donde la operación lee desde un snapshot en el punto en el que se abrió la transacción.

Considera la siguiente cronología de una operación de escritura. Escribe 0 en un set de réplicas de tres nodos:

Nota

Para simplificar, el ejemplo asume:

  • Todas las operaciones de guardar anteriores a Write 0 se han replicado correctamente en todos los nodos.

  • Write prev es la guardar anterior a Write 0.

  • No se han producido otras escrituras después de Write 0.

Cronología de una operación de guardar en un set de réplicas de tres nodos
Tiempo
Evento
Último guardar
Más reciente w: "mayoría" guardar

t 0

El primario aplica guardar 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

Secundario 1 aplica guardar 0

Primary: Write 0
Secondary 1: Write 0
Secondary 2: Write prev
Primary: Write prev
Secondary 1: Write prev
Secondary 2: Write prev

t 2

Secundaria 2 aplica guardar 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

Principal está al tanto de la replicación exitosa a Secundario 1 y envía acuse de recibo al cliente

Primary: Write 0
Secondary 1: Write 0
Secondary 2: Write 0
Primary: Write 0
Secondary 1: Write prev
Secondary 2: Write prev

t 4

El primario está consciente de la replicación exitosa en el secundario 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

El Secundario 1 recibe la notificación (a través del mecanismo regular de replicación) para actualizar su snapshot de su última w: guardar de "mayoría"

Primary: Write 0
Secondary 1: Write 0
Secondary 2: Write 0
Primary: Write 0
Secondary 1: Write 0
Secondary 2: Write prev

t 6

El secundario 2 recibe un aviso (a través del mecanismo regular de replicación) para actualizar su snapshot de su escritura más reciente de "mayoría"

Primary: Write 0
Secondary 1: Write 0
Secondary 2: Write 0
Primary: Write 0
Secondary 1: Write 0
Secondary 2: Write 0

Luego, la siguiente tabla resume el estado de los datos que una operación de lectura con "local" nivel de consistencia de lectura vería en el momento T.

Cronograma de una operación de escritura en un set de réplicas de tres nodos.
Leer destino
Tiempo T
Estado de los datos

Primario

Después de t 0

Los datos reflejan Guardar 0.

Secundaria 1

Antes de t 1

Los datos reflejan guardar prev

Secundaria 1

Después de t 1

Los datos reflejan guardar 0

Secundario 2

Antes de t 2

Los datos reflejan guardar prev

Secundario 2

Después de t 2

Los datos reflejan guardar 0

Volver

readConcern