Docs Menu
Docs Home
/ /
Conectarse a fuentes de datos de MongoDB

preferencia de lectura

Puedes configurar el Preferencia de lectura para un clúster de MongoDB Atlas vinculado para controlar el tipo de miembro del conjunto de réplicas al que Atlas App Services dirige las solicitudes de lectura de la base de datos. También puede especificar un conjunto de etiquetas para miembros específicos del conjunto de réplicas.

No se puede establecer la preferencia de lectura en una fuente de datos federada.

De forma predeterminada, App Services utiliza una preferencia de lectura de primary, que enruta todas las solicitudes de lectura a través del nodo principal de un conjunto de réplicas.

La preferencia de lectura predeterminada (primary) debería ser suficiente para la mayoría de los casos de uso. Considere especificar una preferencia de lectura de clúster cuando necesite hacer lo siguiente:

  • Leer desde un secundario específico que tenga una configuración personalizada, como un nodo de análisis con índices especiales optimizados para generar informes de cargas de trabajo.

  • Leer desde un nodo en una región específica de un conjunto de réplicas distribuidas globalmente.

  • Mantener la disponibilidad de lectura durante una conmutación por error de un conjunto de réplicas, es decir, continuar leyendo datos potencialmente obsoletos cuando no hay ningún nodo primary.

1

Puede configurar la preferencia de lectura para un clúster vinculado desde la pantalla de configuración del clúster en la interfaz de usuario de App Services. Para acceder a la pantalla de configuración, haga clic en Linked Data Sources Debajo de Manage en el panel de navegación izquierdo. En la lista de fuentes de datos, seleccione el clúster en el que desea configurar la preferencia de lectura.

2

En la pantalla de configuración del clúster, seleccione un modo del menú desplegable Read Preference.

El menú desplegable de preferencias de lectura

Están disponibles los siguientes modos de preferencia de lectura:

Modo
Descripción

App Services dirige todas las operaciones de lectura al nodo principal del conjunto de réplicas actual. Este es el modo de preferencia de lectura predeterminado.

App Services dirige todas las operaciones de lectura al nodo principal del conjunto de réplicas actual, si está disponible. Si el nodo principal no está disponible, como durante una conmutación por error automática, las solicitudes de lectura se dirigen a un nodo secundario.

App Services dirige todas las operaciones de lectura a uno de los nodos secundarios del conjunto de réplicas actual.

App Services dirige todas las operaciones de lectura a uno de los nodos secundarios disponibles en el set de réplicas. Si no hay nodos secundarios disponibles, las solicitudes de lectura se dirigen al primario del set de réplicas.

App Services dirige las operaciones de lectura al miembro del conjunto de réplicas que tiene la latencia de red más baja en relación con el cliente.

3

Si especifica una preferencia de lectura distinta primary de, también puede especificar una o más etiquetas de preferencia de lectura. Para atender una solicitud de lectura, un miembro del conjunto de réplicas debe incluir todas las etiquetas de preferencia de lectura especificadas en la configuración de su nodo.

Nota

Conjuntos de etiquetas de clúster Atlas

Para especificar una etiqueta de preferencia de lectura, haga clic en Add Tag y luego ingrese las etiquetas Key y Value en la nueva fila de la tabla Read Preference Tags.

La tabla de etiquetas de preferencia de lectura
4

Una vez que haya especificado un Read Preference y cualquier Read Preference Tags, haga clic en Save. Una vez guardado, App Services enrutará todas las solicitudes de lectura de la base de datos entrantes para el clúster según sus preferencias.

1

Para definir la preferencia de lectura de un clúster vinculado con la CLI de App Services, necesita una copia local de los archivos de configuración de su aplicación.

Para extraer una copia local de la última versión de su aplicación, ejecute lo siguiente:

appservices pull --remote="<Your App ID>"

Tip

También puedes descargar una copia de los archivos de configuración de tu aplicación desde la pantalla Deploy > Export App en la Interfaz de usuario Realm.

2

Para configurar la preferencia de lectura de un clúster vinculado, abra el archivo config.json del clúster y configure el valor de config.readPreference:

/data_sources/<Service Name>/config.json
{
"name": "<MongoDB Service Name>",
"type": "mongodb-atlas",
"config": {
"readPreference": "<Read Preference Mode>"
}
}

Están disponibles los siguientes modos de preferencia de lectura:

Modo
Descripción

App Services dirige todas las operaciones de lectura al nodo principal del conjunto de réplicas actual. Este es el modo de preferencia de lectura predeterminado.

App Services dirige todas las operaciones de lectura al nodo principal del conjunto de réplicas actual, si está disponible. Si el nodo principal no está disponible, como durante una conmutación por error automática, las solicitudes de lectura se dirigen a un nodo secundario.

App Services dirige todas las operaciones de lectura a uno de los nodos secundarios del conjunto de réplicas actual.

App Services dirige todas las operaciones de lectura a uno de los nodos secundarios disponibles en el set de réplicas. Si no hay nodos secundarios disponibles, las solicitudes de lectura se dirigen al primario del set de réplicas.

App Services dirige las operaciones de lectura al miembro del conjunto de réplicas que tiene la latencia de red más baja en relación con el cliente.

3

Si especifica una preferencia de lectura distinta primary de, también puede especificar una o más etiquetas de preferencia de lectura. Para atender una solicitud de lectura, un miembro del conjunto de réplicas debe incluir todas las etiquetas de preferencia de lectura especificadas en la configuración de su nodo. Para especificar un conjunto de etiquetas de preferencia de lectura para un clúster, asegúrese de haber especificado un readPreference distinto de primary y, a continuación, agregue uno o más objetos de definición de etiqueta config.readPreferenceTagSets a:

/data_sources/<Service Name>/config.json
{
"name": "<MongoDB Service Name>",
"type": "mongodb-atlas",
"config": {
"readPreference": "<Read Preference Mode (other than primary)>",
"readPreferenceTagSets": [
{ <Tag Key>: <Tag Value> },
...
],
}
}

Nota

Conjuntos de etiquetas de clúster Atlas

Los clústeres Atlas se configuran con conjuntos de etiquetas predefinidos para cada nodo miembro, según su tipo. Para obtener información detallada sobre qué etiquetas son nodos definidos en un clúster Atlas, consulte Etiquetas del conjunto de réplicas de Atlas.

4

Una vez configurada la preferencia de lectura para el clúster, puede enviar la configuración actualizada a su aplicación remota. La CLI de App Services implementa la actualización inmediatamente al enviarla.

appservices push --remote="<Your App ID>"

Volver

Consultar Atlas desde aplicaciones cliente

En esta página