> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-postgresql-tls-support.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Describe cómo conectar sin problemas MongoDB con ClickHouse Cloud.

# Ingesta de datos de MongoDB a ClickHouse (mediante CDC)

export const Image = ({img, alt, size = "lg"}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} />
      </Frame>
    </div>;
};

export const BetaBadge = ({link, galaxyTrack, galaxyEvent}) => {
  if (link) {
    return <a href={link} target="_blank" rel="noopener noreferrer" className="betaBadge" onClick={galaxyTrack && galaxyEvent ? galaxyOnClick(galaxyEvent) : undefined}>
                <Icon />
                <span>Beta</span>
            </a>;
  }
  return <div className="betaBadge">
            <Icon />
            <span>
                Funcionalidad beta. 
                <u>
                    <a href="/docs/beta-and-experimental-features#beta-features">
                        Más información.
                    </a>
                </u>
            </span>
        </div>;
};

<BetaBadge />

<Info>
  La ingesta de datos desde MongoDB a ClickHouse Cloud mediante ClickPipes está en beta pública.
</Info>

<Note>
  En la consola y la documentación de ClickHouse Cloud, "tabla" y "colección" se usan indistintamente para MongoDB.
</Note>

Puede usar ClickPipes para ingerir datos desde su base de datos de MongoDB a ClickHouse Cloud. La base de datos de MongoDB de origen puede alojarse en instalaciones propias o en la nube mediante servicios como MongoDB Atlas.

Los ClickPipes de MongoDB pueden implementarse y gestionarse manualmente mediante la UI de ClickPipes, así como mediante programación con [OpenAPI](/es/integrations/clickpipes/programmatic-access/openapi) y [Terraform](/es/integrations/clickpipes/programmatic-access/terraform).

<div id="prerequisites">
  ## Requisitos previos
</div>

Antes de empezar, debes asegurarte de que tu base de datos MongoDB esté correctamente configurada para la replicación. Los pasos de configuración dependen de cómo hayas desplegado MongoDB, así que sigue la guía correspondiente a continuación:

1. [MongoDB Atlas](/es/integrations/clickpipes/mongodb/source/atlas)

2. [Generic MongoDB](/es/integrations/clickpipes/mongodb/source/generic)

3. [Amazon DocumentDB](/es/integrations/clickpipes/mongodb/source/documentdb)

Una vez configurada tu base de datos MongoDB de origen, puedes continuar con la creación de tu ClickPipe.

<div id="create-your-clickpipe">
  ## Crea tu ClickPipe
</div>

Asegúrate de haber iniciado sesión en tu cuenta de ClickHouse Cloud. Si aún no tienes una cuenta, puedes registrarte [aquí](https://cloud.clickhouse.com/).

1. En la consola de ClickHouse Cloud, ve a tu servicio de ClickHouse Cloud.

<Image img="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/w-Unfx0B83cK7_6Z/images/integrations/data-ingestion/clickpipes/cp_service.webp?fit=max&auto=format&n=w-Unfx0B83cK7_6Z&q=85&s=f39164a8abccd8fdb779a6742818c4d1" alt="Servicio de ClickPipes" size="lg" border width="1184" height="482" data-path="images/integrations/data-ingestion/clickpipes/cp_service.webp" />

2. Selecciona el botón `Data Sources` en el menú lateral izquierdo y haz clic en "Set up a ClickPipe".

<Image img="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/w-Unfx0B83cK7_6Z/images/integrations/data-ingestion/clickpipes/cp_step0.webp?fit=max&auto=format&n=w-Unfx0B83cK7_6Z&q=85&s=e9541eb0c881173eacc746f45524d8d4" alt="Seleccionar importaciones" size="lg" border width="2606" height="790" data-path="images/integrations/data-ingestion/clickpipes/cp_step0.webp" />

3. Selecciona la tarjeta `MongoDB CDC`.

<Image img="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/w-Unfx0B83cK7_6Z/images/integrations/data-ingestion/clickpipes/mongodb/mongodb-tile.webp?fit=max&auto=format&n=w-Unfx0B83cK7_6Z&q=85&s=3210c2a1bd72a511416f0989ca95a643" alt="Seleccionar MongoDB" size="lg" border width="1802" height="986" data-path="images/integrations/data-ingestion/clickpipes/mongodb/mongodb-tile.webp" />

<div id="add-your-source-mongodb-database-connection">
  ### Agrega la conexión a tu base de datos MongoDB de origen
</div>

4. Completa los datos de conexión de tu base de datos MongoDB de origen que configuraste en el paso de requisitos previos.

<Info>
  Antes de empezar a agregar los datos de conexión, asegúrate de haber permitido las direcciones IP de ClickPipes en las reglas de tu firewall. En la siguiente página puedes encontrar una [lista de direcciones IP de ClickPipes](/es/integrations/clickpipes/home#list-of-static-ips).
  Para obtener más información, consulta las guías de configuración de MongoDB de origen enlazadas [al inicio de esta página](#prerequisites).
</Info>

<Image img="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/w-Unfx0B83cK7_6Z/images/integrations/data-ingestion/clickpipes/mongodb/mongodb-connection-details.webp?fit=max&auto=format&n=w-Unfx0B83cK7_6Z&q=85&s=47d236a4a4e1395c87c6aa1cc19ae215" alt="Completa los datos de conexión" size="lg" border width="1538" height="1698" data-path="images/integrations/data-ingestion/clickpipes/mongodb/mongodb-connection-details.webp" />

<div id="optional-changing-tls-settings">
  #### (Opcional) Cambiar la configuración de TLS
</div>

De forma predeterminada, su ClickPipe se creará con TLS habilitado y con verificación del certificado. Estos valores predeterminados se pueden modificar al crear el ClickPipe:

<Frame>
  <img src="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/tls-settings.webp?fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=74844298c00ea03a9ba16d838b8bca4e" alt="Configuración de TLS" width="1113" height="688" data-path="images/integrations/data-ingestion/clickpipes/postgres/tls-settings.webp" />
</Frame>

O bien, editarse en la sección *Configuración de la conexión* de la pestaña *Configuración* de su ClickPipe pausado:

<Frame>
  <img src="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=70fa9c34556543931a8d2af84ab8b96c" alt="Configuración de la conexión -> Editar conexión" data-og-width="1035" width="1035" data-og-height="312" height="312" data-path="images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=280&fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=eda786fdc17f3afa9113872ebc420310 280w, https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=560&fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=2324c139d7ce0044d4839694d13a6980 560w, https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=840&fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=8e1240b300dcdd76f8ae24951ee4eba9 840w, https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=1100&fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=2383e2cf1bb5c5e66ce2c5e9a2e9c3c1 1100w, https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=1650&fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=f19496e27cb541f75150ad9e2813ebe4 1650w, https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=2500&fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=f57be7c8c9f38d52b00df4099e2b987d 2500w" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/pipe-edit-connection.webp?fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=f9e5783468caf2c8bcaa337733ef2505" alt="Editar conexión" width="703" height="542" data-path="images/integrations/data-ingestion/clickpipes/postgres/pipe-edit-connection.webp" />
</Frame>

Donde:

* `Disable TLS` activa o desactiva TLS para la conexión. Desactivar TLS significa que los datos se envían como texto sin cifrar por la red, lo que puede incluir secretos y datos confidenciales.
* `Skip certificate verification` activa o desactiva la verificación del certificado presentado por la base de datos de origen. Tenga en cuenta las implicaciones de seguridad de omitir la verificación del certificado.
* `TLS Host` (opcional; de forma predeterminada, el *Host* de origen) es el hostname con el que debe coincidir el CN del certificado cuando la verificación del certificado está habilitada.
* `Upload CA` puede usarse para proporcionar una CA cuando la verificación del certificado está habilitada.

<div id="optional-set-up-ssh-tunneling">
  #### (Opcional) Configurar la tunelización SSH
</div>

Puede especificar los detalles de la tunelización SSH si su base de datos MongoDB de origen no es accesible públicamente.

1. Active el interruptor "Usar tunelización SSH".

2. Complete los detalles de la conexión SSH.

   <Image img="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/ssh-tunnel.jpg?fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=3f4a773f7c4c67212b39e13339819d5a" alt="Tunelización SSH" size="lg" border width="1780" height="1342" data-path="images/integrations/data-ingestion/clickpipes/postgres/ssh-tunnel.jpg" />

3. Para usar autenticación basada en claves, haga clic en "Revocar y generar par de claves" para generar un nuevo par de claves y copie la clave pública generada en su servidor SSH, en `~/.ssh/authorized_keys`.

4. Haga clic en "Verificar conexión" para verificar la conexión.

<Note>
  Asegúrese de permitir las [dirección IP de ClickPipes](/es/integrations/clickpipes/home#list-of-static-ips) en las reglas de su firewall para el host bastión SSH, de modo que ClickPipes pueda establecer el túnel SSH.
</Note>

Una vez completados los detalles de la conexión, haga clic en `Siguiente`.

<div id="advanced-settings">
  #### Configurar ajustes avanzados
</div>

Puede configurar los ajustes avanzados si es necesario. A continuación, se ofrece una breve descripción de cada ajuste:

* **Intervalo de sincronización**: Es el intervalo con el que ClickPipes consultará la base de datos de origen para detectar cambios. Esto influye en el servicio de ClickHouse de destino; para los usuarios con restricciones de costos, recomendamos mantenerlo en un valor más alto (por encima de `3600`).
* **Tamaño del lote de extracción**: El número de filas que se recuperarán en un solo lote. Este ajuste es orientativo y puede que no se respete en todos los casos.
* **Número de tablas de la instantánea en paralelo**: Es el número de tablas que se recuperarán en paralelo durante la instantánea inicial. Resulta útil cuando tiene un gran número de tablas y desea controlar cuántas se recuperan en paralelo.

<div id="configure-the-tables">
  ### Configura las tablas
</div>

5. Aquí puedes seleccionar la base de datos de destino para tu ClickPipe. Puedes seleccionar una base de datos existente o crear una nueva.

   <Image img="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/w-Unfx0B83cK7_6Z/images/integrations/data-ingestion/clickpipes/mongodb/select-destination-db.webp?fit=max&auto=format&n=w-Unfx0B83cK7_6Z&q=85&s=b50fcaa61810f6581270f89a80a76b2d" alt="Selecciona la base de datos de destino" size="lg" border width="1742" height="548" data-path="images/integrations/data-ingestion/clickpipes/mongodb/select-destination-db.webp" />

6. Puedes seleccionar las tablas que quieres replicar desde la base de datos MongoDB de origen. Al seleccionar las tablas, también puedes optar por cambiarles el nombre en la base de datos de destino de ClickHouse.

<div id="review-permissions-and-start-the-clickpipe">
  ### Revisa los permisos e inicia el ClickPipe
</div>

7. Selecciona el rol "Acceso completo" en el menú desplegable de permisos y haz clic en "Completar configuración".

   <Image img="https://mintcdn.com/private-7c7dfe99-postgresql-tls-support/vgIzai2BO-JprHxt/images/integrations/data-ingestion/clickpipes/postgres/ch-permissions.jpg?fit=max&auto=format&n=vgIzai2BO-JprHxt&q=85&s=3b7fda39ac066231cb3469e865985d64" alt="Revisar permisos" size="lg" border width="1844" height="716" data-path="images/integrations/data-ingestion/clickpipes/postgres/ch-permissions.jpg" />

<div id="whats-next">
  ## ¿Qué sigue?
</div>

Una vez que hayas configurado tu ClickPipe para replicar datos de MongoDB en ClickHouse Cloud, puedes centrarte en cómo consultar y modelar tus datos para obtener un rendimiento óptimo.

<div id="caveats">
  ## Consideraciones
</div>

Estas son algunas consideraciones que debes tener en cuenta al usar este conector:

* Requerimos MongoDB versión 5.1.0 o superior.
* Usamos la API nativa de Change Streams de MongoDB para CDC, que se basa en el oplog de MongoDB para capturar cambios en tiempo real.
* Los documentos de MongoDB se replican en ClickHouse como JSON type de forma predeterminada. Esto permite una gestión flexible del schema y hace posible usar el amplio conjunto de operadores JSON de ClickHouse para realizar consultas y análisis. Puedes obtener más información sobre cómo consultar datos JSON [aquí](/es/reference/data-types/newjson).
* La configuración de PrivateLink de autoservicio no está disponible actualmente. Si usas AWS y necesitas PrivateLink, ponte en contacto con [db-integrations-support@clickhouse.com](mailto:db-integrations-support@clickhouse.com) o crea un ticket de soporte; trabajaremos contigo para habilitarlo.
