Docs Menu
Docs Home
/ /

Implementar una instancia de base de datos federada

Tiempo estimado de finalización: 15 minutos

Esta parte del tutorial lo guía a través de la implementación de una instancia de base de datos federada utilizando los siguientes asistentes de inicio rápido en la interfaz de usuario de Atlas:

  • El El asistente para sistemas descendentes de alimentación le ayuda a configurar una instancia de base de datos federada que exporta datos desde su clúster Atlas y transforma los datos en Parquet., CSV, BSON, o MongoDB Extended JSON, y copia los datos a sus depósitos AWS S3 en intervalos específicos mediante activadores Atlas.

  • El asistente Explorar con datos de muestra le ayuda a configurar una instancia de base de datos federada cargada con datos de muestra para demostrar cómo conectarse a la instancia de base de datos federada y ejecutar consultas.

  • El asistente Consulta de datos en clústeres le ayuda a configurar una instancia de base de datos federada que accede a datos de varios clústeres Atlas para que pueda ejecutar consultas federadas en colecciones de todos ellos.

Para obtener más información sobre las opciones de configuración de almacenamiento, consulta Configurar almacenes de datos para una instancia federada de base de datos.

Para implementar una instancia de base de datos federada, debe tener Project Owner acceso al proyecto.

Importante

Los usuarios con acceso deben agregarse Organization Owner como Project Owner al proyecto antes de implementar su instancia de base de datos federada.

Para completar esta parte del tutorial, asegúrese de cumplir los siguientes requisitos previos:

  • Cree una cuenta MongoDB Atlas, si aún no tiene una.

  • Para el asistente de sistemas de alimentación descendente, necesita:

  • Para el asistente Consultar datos entre clústeres, necesita:

    • Al menos un clúster Atlas implementado en el mismo proyecto que utilizará para su instancia de base de datos federada.

    • Al menos una colección de bases de datos. Puedes cargar datos de muestra si aún no tienes colecciones.

El asistente de sistemas de alimentación descendente le ayuda a configurar una instancia de base de datos federada que escribe datos desde su clúster Atlas a su bucket de AWS S3 de manera continua según un cronograma.

1
2
3
  1. Haga clic en el menú desplegable Create New Federated Database.

  2. Seleccione Feed Downstream Systems.

4
5

El valor predeterminado es FederatedDatabaseInstance[n]. Una vez creada la instancia de base de datos federada, no se puede cambiar su nombre.

6
  1. Seleccione un clúster de Atlas para usar como fuente de datos desde el desplegable. Por defecto, Atlas Data Federation añade todas las colecciones en este clúster. Para usar un subconjunto de los datos, haz clic en Specific Collections, expande las bases de datos y luego selecciona las colecciones que deseas añadir a tu instancia federada de base de datos.

    Tip

    Para filtrar las bases de datos y colecciones, introduzca texto en el campo Specific Collections. El cuadro de diálogo solo muestra las bases de datos y colecciones cuyos nombres coinciden con sus criterios de búsqueda.

  2. Haga clic en Continue.

7

Puede seleccionar un rol de AWS IAM existente para el cual Atlas esté autorizado desde la lista desplegable de selección de roles o elegir Authorize an AWS IAM Role para autorizar un nuevo rol.

Si seleccionó un rol existente para el cual Atlas está autorizado, continúe con el siguiente paso para enumerar sus buckets de AWS S.3

Si está autorizando a Atlas para un rol existente o está creando un rol nuevo, complete los siguientes pasos antes de continuar con el siguiente paso:

  1. En el menú desplegable, seleccione Authorize an AWS IAM Role para autorizar un nuevo rol o seleccionar un rol existente.

  2. Utiliza el AWS ARN y el ID externo único en la sección Role Authorization para agregar Atlas a las relaciones de confianza de un rol IAM de AWS existente o nuevo.

    En la interfaz de usuario de Atlas, haga clic en una de las siguientes opciones:

    Importante

    Si modifica su ARN de rol de AWS personalizado en el futuro, asegúrese de que la política de acceso del rol incluya el acceso apropiado a los recursos S para la instancia de base de datos federada.3

    Para obtener más información,consulte Configurar el acceso unificado a AWS y Crear un rol de acceso de proveedor de nube.

  3. Haga clic en Validate AWS IAM role.

8
  1. Introduzca el nombre de su depósito S.3

  2. Siga los pasos en la interfaz de usuario de Atlas para asignar una política de acceso a su rol de AWS IAM.

  3. Haga clic en Validate AWS S3 bucket access.

  4. Haga clic en Continue.

9

Programe un disparador para copiar continuamente datos desde su clúster Atlas a su bucket S3 usando $out en la Schedule Queries sección.

  1. Especifique con qué frecuencia desea extraer datos de su clúster Atlas utilizando los menús desplegables Repeat Once By.

  2. Opcional. Especifique si Atlas Data Federation debe volver a ejecutar la misma consulta si no se pudo realizar por algún motivo. De forma predeterminada, esta opción está deshabilitada para permitir que Atlas Data Federation vuelva a ejecutar las consultas no realizadas. Como alternativa, para omitir las consultas no realizadas y no recuperarlas,Skip Catch Up Events active.

  3. Opcional. Elija el formato que desee para sus datos cuando Atlas Data Federation los escriba en su bucket S.Atlas Data3 Federation admite Parquet, CSV, BSON y MongoDB Extended JSON.

  4. Especifique Max File Size para 3 limitar Max File Size 100 1 el 3 tamaño 10 100 de cada archivo que Atlas Data Federation escribe en su bucket S. Por ejemplo, si establece en MB y una consulta devuelve GB de datos, Atlas Data Federation escribe la consulta en su bucket S en archivos, cada uno de MB.

  5. Ingrese el prefijo de AWS para su depósito S3 de destino.

  6. Introduzca el nombre del campo de fecha indexado en Date Field y especifique el formato de su valor mediante el menú desplegable. Cada colección que desee copiar posteriormente debe tener un campo indexado que almacene una marca de tiempo como valor.

  7. Haga clic en Continue.

10

El asistente Explorar con datos de muestra le ayuda a configurar una instancia de base de datos federada cargada con datos de muestra.

1
2
3
  1. Haga clic en el menú desplegable Create New Federated Database.

  2. Seleccione Explore with Sample Data.

4
5

Esta instancia de base de datos federada incluye los siguientes conjuntos de datos de muestra que puede utilizar para practicar la ejecución de consultas:

  • /airbnb/listingsAndReviews/{bedrooms int}/{review_scores.review_scores_rating int}/

    Esta ruta hace referencia al conjunto de datos airbnb, que contiene los detalles del anuncio de la casa vacacional y las reseñas de los clientes. Para obtener más información sobre este conjunto de datos, consulte Conjunto de datos de muestra de listados de AirBnB.

    Para esta ruta, la instancia de base de datos federada utiliza particiones optimizadas para consultas en los campos bedrooms y review_scores.review_score_ratings.

  • /analytics/accounts/{limit int}/

    Esta ruta hace referencia al analytics conjunto de datos, que contiene datos de una aplicación típica de servicios financieros. Para obtener más información sobre este conjunto de datos, consulte el Conjunto de datos de ejemplo de Analytics.

    Para esta ruta, la instancia de base de datos federada utiliza particiones optimizadas para consultas en el campo limit.

  • /analytics/customers/{birthdate isodate}/

    Estos datos hacen referencia al analytics conjunto de datos, que contiene colecciones de una aplicación típica de servicios financieros. Para obtener más información sobre este conjunto de datos, consulte el Conjunto de datos de ejemplo de Analytics.

    Para esta ruta, la instancia de base de datos federada utiliza particiones optimizadas para consultas en el campo birthdate.

  • /analytics/transactions/{account_id int}/

    Esta ruta hace referencia al conjunto analytics de datos, que contiene datos de una aplicación típica de servicios financieros. Para obtener más información sobre este conjunto de datos, consulte el Conjunto de datos de ejemplo de Analytics.

    Para esta ruta, la instancia de base de datos federada utiliza particiones optimizadas para consultas en el campo account_id.

  • /mflix/movies/{type string}/{year int}/

    Esta ruta hace referencia al conjunto mflix de datos, que contiene información sobre películas y salas de cine. Para obtener más información sobre este conjunto de datos, consulte el conjunto de datos de ejemplo de Mflix.

    Para esta ruta, la instancia de base de datos federada utiliza particiones optimizadas para consultas en los campos type y year.

  • /mflix/sessions.json

    Esta ruta hace referencia al conjunto mflix de datos, que contiene información sobre películas y salas de cine. Para obtener más información sobre este conjunto de datos, consulte el conjunto de datos de ejemplo de Mflix.

    Esta ruta no contiene ningún atributo de partición y, por lo tanto, para las consultas sobre los datos de la colección, Data Federation busca todos los archivos de la colección.

  • /mflix/theaters/{theaterId string}/{location.address.zipcode string}/

    Esta ruta hace referencia al conjunto mflix de datos, que contiene información sobre películas y salas de cine. Para obtener más información sobre este conjunto de datos, consulte el conjunto de datos de ejemplo de Mflix.

    Para esta ruta, la instancia de base de datos federada utiliza particiones optimizadas para consultas en los campos theaterId y location.address.zipcode.

  • /mflix/users.json

    Esta ruta hace referencia a la mflix colección, que contiene datos sobre películas y salas de cine. Para obtener más información sobre este conjunto de datos, consulte el conjunto de datos de ejemplo de Mflix.

    Esta ruta no contiene ningún atributo de partición y, por lo tanto, para las consultas sobre los datos de la colección, la instancia de base de datos federada busca todos los archivos de la colección.

  • /nyc-yellow-cab-trips/{trip_start_isodate isodate}/{passenger_count int}/{fare_type string}/

    Esta ruta hace referencia al conjunto de datos nyc-yellow-cab-trips, que contiene datos sobre los viajes, incluida la fecha del viaje, la tarifa y el número de pasajeros.

    Para esta ruta, la instancia de base de datos federada utiliza particiones optimizadas para consultas en los campos trip_start_isodate, passenger_count y fare_type.

El asistente Consulta de datos entre clústeres le ayuda a configurar una instancia de base de datos federada que accede a datos de múltiples clústeres de Atlas.

1
2
3
  1. Haga clic en el menú desplegable Create New Federated Database.

  2. Seleccione Query Data Across Clusters.

4
5

El valor predeterminado es FederatedDatabaseInstance[n]. Una vez creada la instancia de base de datos federada, no se puede cambiar su nombre.

6
  1. Seleccione un clúster de Atlas para usarlo como fuente de datos en el menú desplegable. Atlas solo muestra los clústeres de su proyecto actual en este menú desplegable.

  2. Expanda las bases de datos y seleccione las colecciones que desea agregar a su instancia de base de datos federada.

    Tip

    Para filtrar las bases de datos y colecciones, introduzca texto en el campo Specific collections. El cuadro de diálogo solo muestra las bases de datos y colecciones cuyos nombres coinciden con sus criterios de búsqueda.

  3. Opcional. Expanda la Cluster Read Preference configuración para configurar los siguientes campos.

    Nombre de campo
    Descripción

    Read Preference Mode

    Especifica el miembro del conjunto de réplicas al que se dirigen las solicitudes de lectura. Puede elegir una de las siguientes opciones en el menú desplegable:

    • primary - para enrutar todas las solicitudes de lectura al conjunto de réplicas principal

    • primaryPreferred - para enrutar todas las solicitudes de lectura al conjunto de réplicas principal y a los miembros secundarios solo si primary no está disponible

    • secondary - para dirigir todas las solicitudes de lectura a los miembros secundarios del set de réplicas

    • secondaryPreferred - para dirigir todas las solicitudes de lectura a los miembros secundarios del set de réplicas y solo al principal en clústeres particionados si los miembros secondary no están disponibles

    • nearest - para enrutar todas las solicitudes de lectura a un miembro aleatorio del conjunto de réplicas elegible, independientemente de si ese miembro es primario o secundario

    Si agrega un clúster Atlas como tienda, el valor predeterminado es secondary.

    Si no configura nada en la configuración de almacenamiento de su instancia de base de datos federada, el valor predeterminado nearest es. Para obtener más información, consulte Modo de preferencia de lectura.

    IMPORTANTE: Federación de datos e impacto en el nodo principal

    Cuando las consultas de federación de datos se configuran con una preferencia de lectura dirigida a nodos secundarios, no se espera que generen carga en el nodo principal del clúster Atlas de respaldo. Las consultas iniciadas en un nodo secundario mantienen la afinidad del cursor con ese nodo durante su ciclo de vida.

    En algunos registros, pueden aparecer operaciones getMore con una preferencia de lectura primaryPreferred. Este comportamiento es normal y no indica que el cursor haya cambiado al nodo principal. El modo primaryPreferred es válido tanto en los nodos principal como secundario y permite a los controladores gestionar cambios de rol poco frecuentes (como que un nodo secundario se convierta en principal) sin tener que volver a ejecutar la consulta. La ejecución del cursor continúa en el nodo original a menos que este cambie de rol.

    La Federación de Datos aísla sus cargas de trabajo del nodo principal sin necesidad de configuración adicional. El modo primaryPreferred garantiza la compatibilidad con los nodos principal y secundario, lo que permite a los controladores gestionar cambios de rol poco frecuentes (como que un nodo secundario se convierta en principal) sin tener que volver a ejecutar la consulta. La ejecución del cursor continúa en el nodo original a menos que este cambie de rol.

    TagSets

    Especifica la lista de etiquetas o documentos de especificación de etiquetas que contienen pares de nombre y valor para el miembro del conjunto de réplicas al que se desean enrutar las solicitudes de lectura. Para obtener más información, consulte Conjuntos de etiquetas de preferencia de lectura.

    Maxstaleness Seconds

    Especifica el retardo máximo de replicación, o "obsolescencia", para las lecturas de los secundarios. Para obtener más información, consulte Preferencia de lectura maxStalenessSeconds.

  4. Haga clic en Add Atlas cluster and collection y repita estos pasos para todos los clústeres Atlas que desee utilizar como fuentes de datos.

  5. Una vez que haya terminado de agregar clústeres, haga clic en Continue.

7

Ahora que su instancia de base de datos federada está implementada, proceda a Configurar la conexión para su instancia de base de datos federada.

En esta página