Este ejemplo de uso demuestra cĂłmo configurar un conector de origen de MongoDB Kafka para escuchar eventos de cambio en varias colecciones de MongoDB y publicarlos en un tema de Kafka.
Si necesita que su conector escuche los eventos de cambio en un conjunto mĂĄs especĂfico de bases de datos y colecciones, puede utilizar una pipeline. Un pipeline es un pipeline de agregaciĂłn de MongoDB compuesto por instrucciones a la base de datos para filtrar o transformar datos. Consulta la siguiente secciĂłn para ver ejemplos de cĂłmo configurar el ajuste de tu conector pipeline para que coincida con varios nombres de bases de datos y colecciones utilizando una expresiĂłn regular.
Nota
Las configuraciones de database y collection tambiĂ©n determinan a quĂ© bases de datos y colecciones el conector escucha los eventos de cambio. Para aprender mĂĄs sobre estos ajustes, consulta la guĂa Propiedades de ConexiĂłn de Origen MongoDB.
Ejemplos
Los siguientes ejemplos muestran cĂłmo usar una pipeline de agregaciĂłn para seleccionar nombres especĂficos de bases de datos o colecciones en los que escuchar eventos de cambio.
Incluir eventos de cambio de varias bases de datos
Puedes definir una pipeline de agregaciĂłn para seleccionar solo eventos de cambio en mĂșltiples bases de datos especificando lo siguiente en la configuraciĂłn de pipeline:
Un operador de agregaciĂłn
$matchEl campo
ns.db, que identifica la parte de la base de datos del espacio de nombresEl operador
$regexy una expresiĂłn regular que coincide con los nombres de las bases de datos
La siguiente configuraciĂłn de ejemplo muestra cĂłmo puede configurar su conector de origen para que escuche eventos de cambio en las bases de datos sandbox y firewall:
pipeline=[{"$match": {"ns.db": {"$regex": "/^(sandbox|firewall)$/"}}}]
Excluir eventos de cambio de varias colecciones
Puedes definir una pipeline de agregaciĂłn para omitir los eventos de cambio en varias colecciones especificando lo siguiente en la configuraciĂłn pipeline:
Un operador de agregaciĂłn
$matchEl campo
ns.coll, que identifica la parte de colecciĂłn del namespaceEl operador
$regexy una expresiĂłn regular que coincida con los nombres de la colecciĂłnEl operador
$notque instruye al operador$regexque lo encierra para que coincida con todo lo que la expresiĂłn regular no coincida
La siguiente configuraciĂłn de ejemplo muestra cĂłmo puedes configurar tu conector de origen para filtrar los eventos de cambio que se originan en todas las colecciones llamadas "hiperspace" en cualquier base de datos:
pipeline=[{"$match": {"ns.coll": {"$regex": {"$not": "/^hyperspace$/"}}}}]
InformaciĂłn Adicional
Sintaxis de expresiones regulares utilizando la clase Patrones