La concurrent opción que habilita el paralelismo intra-consulta. En este modo, MongoDB Search utiliza más recursos, pero mejora la latencia de cada query individual. Esta funcionalidad solo está disponible para Nodos de búsqueda dedicados.
concurrent Limitaciones de opciones
Al ejecutar consultas con la opción concurrent, MongoDB Search no garantiza que cada query se ejecute de forma concurrente. Por ejemplo, cuando hay demasiadas queries concurrentes en cola, MongoDB Search podría recurrir a la ejecución en un solo hilo.
Sintaxis
concurrent tiene la siguiente sintaxis:
{ "$searchMeta"|"$search": { "index": "<index name>", // optional, defaults to "default" "<operator>": { <operator-specifications> }, "concurrent": true | false, ... } }
Comportamiento
La opción booleana concurrent te permite solicitar a MongoDB Search que paralelice la ejecución de queries entre segmentos, lo que en muchos casos mejora el tiempo de respuesta. Puedes establecer uno de los siguientes valores para la opción concurrent:
true- para solicitar que MongoDB Search ejecute la query con múltiples subprocesosfalse- para ejecutar la query en un solo hilo (por defecto)
MongoDB Search te permite controlar este comportamiento query por query para permitir la ejecución simultánea solo de queries intensas y de larga duración, lo que minimiza la contención y mejora el rendimiento de la query en general. La ejecución concurrente es especialmente eficiente en grandes conjuntos de datos, ya que hay una mayor cantidad de segmentos.
Ejemplo
Consider the following query against the sample_mflix.movies collection in the sample data. The query indicates a concurrent search for movies that contain the term new york in the title.
1 db.movies.aggregate([ 2 { 3 "$search": { 4 "text": { 5 "path": "title", 6 "query": "new york" 7 }, 8 "concurrent": true 9 } 10 } 11 ])