Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

473
Views
MongoDB Atlas - $búsqueda v/s $coincidencia

Estoy creando una aplicación web usando Node y MongoDB Atlas. Necesito implementar una barra de búsqueda, que se usará para buscar una colección MongoDB en 2 campos particulares. Estaba investigando un poco sobre la mejor manera de construir esto, pero los documentos de Mongo son un poco confusos.

Estos documentos para Atlas Search mencionan una etapa de agregación de $search . Por otro lado, estos documentos para las etapas de agregación de MongoDB no mencionan en absoluto la etapa $search .

Quiero que la búsqueda sea 'borrosa', y esta respuesta dice que esto debe hacerse usando la expresión regular, pero no pude encontrar ninguna referencia para un operador $regex en los documentos de Atlas Search. Para una tarea anterior, creé una canalización de agregación en la que usé el operador $match con db.collection.aggregate() . Me parece que el operador $match también debería funcionar bien para la barra de búsqueda difusa, ya que me permitiría usar el operador $regex . Creo que $match también puede aprovechar cualquier índice que pueda crear en Atlas para sus consultas.

Entonces, mi pregunta es básicamente esta: ¿Cuál es la diferencia entre usar $search y $match ? ¿Uno ofrece beneficios de rendimiento/costo sobre el otro? ¿O son para diferentes casos de uso que me faltan por completo? Si usar $search es el camino a seguir, ¿cómo se haría la consulta para que sea borrosa? Estaré agradecido por cualquier ayuda.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

$search es la mejor opción para implementar la función de búsqueda. Producirá resultados más precisos, ofrecerá funciones como resaltado y autocompletado, y será más eficaz para este caso de uso.

Mientras trabaja en la implementación, aquí están los documentos .

Así es como se verá una consulta simple con coincidencia aproximada, con los valores predeterminados para la configuración aproximada:

 { $search: { "index": <index name>, // optional, defaults to "default" "text": { "query": "queryText", "path": "<fields-to-search>", "fuzzy": { "maxEdits": 2 } } } }
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!