Saltar al contenido principal

¿Puedo consultar campos individuales en el tipo de dato JSON?

Para acceder directamente a campos, como {"user_id": 123}, puede usar la notación de punto:
SELECT doc.user_id as user_id FROM your_table;
Para acceder directamente a campos de objetos anidados, como {"address": { "city": "San Francisco", "state": "CA" }}, use el operador ^:
SELECT doc.^address.city AS city FROM your_table;
Para las agregaciones, convierte el campo al tipo apropiado con la función CAST o la sintaxis :::
SELECT sum(doc.shipping.cost::Float32) AS total_shipping_cost FROM t1;
Para obtener más información sobre cómo trabajar con JSON, consulta nuestra guía sobre cómo trabajar con JSON.

¿Cómo puedo aplanar los documentos anidados de MongoDB en ClickHouse?

Los documentos de MongoDB se replican en ClickHouse como tipo JSON de forma predeterminada, lo que preserva la estructura anidada. Tiene varias opciones para aplanar estos datos. Si quiere aplanarlos en columnas, puede usar vistas normales, vistas materializadas o acceso en tiempo de consulta.
  1. Vistas normales: Use vistas normales para encapsular la lógica de aplanamiento.
  2. Vistas materializadas: Para conjuntos de datos más pequeños, puede usar vistas materializadas actualizables con el modificador FINAL“ para aplanar y deduplicar los datos periódicamente. Para conjuntos de datos más grandes, recomendamos usar vistas materializadas incrementales sin FINAL para aplanar los datos en tiempo real y, después, deduplicarlos en tiempo de consulta.
  3. Acceso en tiempo de consulta: En lugar de aplanar los datos, use la notación por puntos para acceder directamente a los campos anidados en las consultas.
Para ver ejemplos detallados, consulte nuestra guía sobre cómo trabajar con JSON.

¿Puedo conectar bases de datos de MongoDB que no tienen una IP pública o están en redes privadas?

Ofrecemos compatibilidad con AWS PrivateLink para conectar bases de datos de MongoDB que no tienen una IP pública o están en redes privadas. Actualmente, Azure Private Link y GCP Private Service Connect no son compatibles.

¿Qué ocurre si elimino una base de datos/tabla de mi base de datos de MongoDB?

Cuando eliminas una base de datos/tabla de MongoDB, ClickPipes seguirá ejecutándose, pero la base de datos/tabla eliminada dejará de replicar cambios. Las tablas correspondientes en ClickHouse se conservan.

¿Cómo gestiona MongoDB CDC Connector las transacciones?

Cada cambio de documento dentro de una transacción se procesa de forma individual en ClickHouse. Los cambios se aplican en el orden en que aparecen en el oplog, y solo los cambios confirmados se replican en ClickHouse. Si una transacción de MongoDB se revierte, esos cambios no aparecerán en el change stream. Para ver más ejemplos, consulta nuestra guía sobre cómo trabajar con JSON.

¿Cómo soluciono el error resume of change stream was not possible, as the resume point may no longer be in the oplog.?

Este error suele producirse cuando se trunca el oplog y ClickPipe no puede reanudar el change stream en el punto previsto. Para resolver este problema, vuelva a sincronizar el ClickPipe. Para evitar que este problema vuelva a producirse, recomendamos aumentar el período de retención del oplog. Consulte las instrucciones para MongoDB Atlas, MongoDB autogestionado o Amazon DocumentDB.

¿Cómo se gestiona la replicación?

Usamos la API nativa de Change Streams de MongoDB para seguir los cambios en la base de datos. La API de Change Streams proporciona un flujo reanudable de cambios en la base de datos mediante el oplog (registro de operaciones) de MongoDB. ClickPipe usa los tokens de reanudación de MongoDB para seguir la posición en el oplog y garantizar que cada cambio se replique en ClickHouse.

¿Qué preferencia de lectura debo usar?

La preferencia de lectura que debe usar depende de su caso de uso específico. Si quiere minimizar la carga en su nodo primario, recomendamos usar la preferencia de lectura secondaryPreferred. Si quiere optimizar la latencia de ingestión, recomendamos usar la preferencia de lectura primaryPreferred. Para más detalles, consulte la documentación de MongoDB.

¿El ClickPipe de MongoDB es compatible con Sharded Cluster?

Sí, el ClickPipe de MongoDB es compatible tanto con Replica Set como con Sharded Cluster.

¿MongoDB ClickPipe es compatible con Amazon DocumentDB?

Sí, MongoDB ClickPipe es compatible con Amazon DocumentDB 5.0. Consulta la guía de configuración del origen para Amazon DocumentDB para obtener más información. PrivateLink es compatible con clústeres de MongoDB (y DocumentDB) solo en AWS. Ten en cuenta que, a diferencia de una base de datos relacional de un solo nodo, el cliente de MongoDB necesita que el descubrimiento del conjunto de réplicas se complete correctamente para respetar la ReadPreference configurada. Para ello, debes configurar PrivateLink con todos los nodos del clúster, de modo que el cliente de MongoDB pueda establecer correctamente la conexión al conjunto de réplicas y redirigirse a otro nodo si el nodo conectado deja de estar disponible. Si prefieres conectarte a un solo nodo del clúster, puedes omitir el descubrimiento del conjunto de réplicas especificando /?directConnection=true en la cadena de conexión durante la configuración de ClickPipes. En este caso, la configuración de PrivateLink será similar a la de una base de datos relacional de un solo nodo y es la opción más sencilla para usar PrivateLink. Para la conexión al conjunto de réplicas, puedes configurar PrivateLink para MongoDB con VPC Resource o VPC Endpoint Service. Si optas por VPC Resource, tendrás que crear una configuración de recurso GROUP, además de una configuración de recurso CHILD para cada nodo del clúster. Si optas por VPC Endpoint Service, tendrás que crear un Endpoint Service independiente (y un NLB independiente) para cada nodo del clúster. Consulta la documentación de AWS PrivateLink for ClickPipes para obtener más información. Ponte en contacto con el soporte de ClickHouse si necesitas ayuda.
Última modificación el 10 de junio de 2026